The following is a code sample that reads a recordset based on a query and creates a separate PDF for each District. OutputTo does not give you the option of a filter or Where clause as the OpenReport and OpenForm methods do so you have to do something else to get the report to run for one district at a time. The easiest thing is for the report's RecordSource, use a query that references the form field you are filling with the current district. If you want to also run this report using some other method, you'll need a bit of code in the report's Load event to decide which querydef to use as the RecordSource.
Dim
db as DAO.Database
Dim
qd as DAO.Querydef
Dim
rs as DAO.Recordset
Dim
strPath as
String
Dim
strDocName as
String
Set
db = CurrentDB()
Set
qd = db.Querydefs!yourqueryname
Set
rs = qd.OpenRecordSet
strPath =
"C:\exportfolder\"
Do
Until
rs.EOF =
True
Forms!yourformname!yourcontrolname = rs!District
strDocName = strpath &
"SomeReportName_"
& rs!District &
".pdf"
Kill DocName
'delete existing file if any so outputto won't hang
DoCmd.OutputTo acOutputReport,
"somereportname"
, acFormatPDF, strDocName
rs.MoveNext
Loop
rs.Close