Привет всем, я системный администратор, просто пытаюсь автоматизировать некоторые отчеты, которые я должен запускать каждое утро.Сначала я нахожу отчет, который существует много, а затем мне нужно открыть его, кормить его датой со вчерашнего дня, если только не понедельник, тогда я должен использовать дату последнего рабочего дня, который обычно является пятницей.Теперь я могу получить отчеты для экспорта, используя docmd.
Но я могу понять, как передать ему несколько параметров
Так что я думаю, что это нужно сделать, это что-товот так.
Dim reportName As String
Dim fileName As String
Dim para As String
reportName = "dailyReports"
fileName = "C:\reports\report.pdf"
formanName = ""
BEGdateVaule = ""
ENDdateVaule = ""
para = "Forman = 'formanName' AND BEGdate = 'BEGdateVaule' AND ENDdate = 'ENDdateVaule'"
## if it is Monday then figure out Fridays date
if (weekday(Now()= 2)[
set date to Fridays
for %%x in (
formanName = "Tom"
formanName = "Dick"
formanName = "Harry"
)do(
run Sub
)
## if it is tues then figure out mondays date
ect . .
Sub
DoCmd.openReport reportName, acViewPreview, para ,acHidden
DoCmd.OutputTo acOutputReport, reportName, acFormatPDF, fileName
Docmd.Close acReport, reportName, acSaveno
end sub
Так что я думаю, что я на правильном пути, но есть две вещи, которые я могу выяснить:
Один: как получить дату пятницы / вчерашнюю дату изатем установите переменные на это.
Два: как запустить код для разных форманов, чтобы каждый получал экспорт файла к этой дате.
Я новичок в кодировании, но яБыстро изучить любое направление здесь было бы здорово.
Спасибо