Все,
В MS Access 2010 у меня есть таблица (Сегодняшние установленные Jrnls), которая связана с отчетом.Я запускаю приведенный ниже код VBA, чтобы экспортировать отчет в PDF-файл на общем диске.
Public Function exporttopdf()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim MyFileName As String
Dim mypath As String
Dim temp As String
mypath = "S:\Dan\" & Format(Date, "mm-dd-yyyy") & "\"
If Dir(mypath, vbDirectory) = "" Then MkDir mypath
Set db = CurrentDb()
Set rs = CurrentDb.OpenRecordset("SELECT distinct [Settlement No] FROM [Today's Settled Jrnls]", dbOpenDynaset)
Do While Not rs.EOF
temp = rs("[Settlement No]")
MyFileName = rs("[Settlement No]") & ".PDF"
DoCmd.OpenReport "Settlement Report", acViewReport, , "[Settlement No]='" & temp & "'"
DoCmd.OutputTo acOutputReport, "", acFormatPDF, mypath & MyFileName
DoCmd.Close acReport, "Settlement Report"
rs.MoveNext
Loop
Set rs = Nothing
Set db = Nothing
End Function
Это работает, но я бы хотел изменить таблицу [Сегодняшние установленные Jrnls] на другую таблицу [Новые Jrnls].Новая таблица имеет те же столбцы и настройки.Однако, когда я изменяю таблицу в приведенном выше операторе выбора, код выполняется, но отчет остается пустым.Я предполагаю, что это потому, что отчет (Расчетный отчет) все еще связан со старой таблицей.Знаете ли вы, как я могу связать отчет с новой таблицей с помощью VBA?
Дан