Я хочу использовать поле (DropPath
), найденное в таблице SetupExp
, для ссылки в DoCmd.OutPutTo
droppath.SetupExp = D:\Export\
Это работает
DoCmd.OutputTo acOutputTable, "CustItemExp", "Excel97-Excel2003Workbook(*.xls)", "D:\Export\CustItemExp" & Format(Date, "yymmdd") & ".xls", False, "", 0, acExportQualityPrint
Это не:
DoCmd.OutputTo acOutputTable, "CustItemExp", "Excel97-Excel2003Workbook(*.xls)", "droppath.SetupExp" & Format(Date, "yymmdd") & ".xls", False, "", 0, acExportQualityPrint
Он должен смотреть на droppath.SetupExp
, чтобы создать файл CSV с именем CustItemExp.csv
в этом месте.
Вы не можете ссылаться на значения таблицы или поля запроса непосредственно в VBA так же, как вы можете ссылаться на свойства объектов в формах или отчетах.
Вместо этого вам нужно будет получить значение записи в вашей таблице либо с помощью агрегатной функции домена, такой как DLookup
или DFirst
, либо с помощью открытие набора записей записей таблицы и извлечения значения.
Основываясь на ваших примерах, я мог бы предложить что-то вроде строк:
DoCmd.OutputTo acOutputTable, "CustItemExp", acFormatXLS, DFirst("droppath", "setupexp") & "CustItemExp" & Format(Date, "yymmdd") & ".xls"
Невозможно напрямую ссылаться на таблицу таким образом. Примечание на будущее: имя таблицы должно стоять перед именем поля.