#excel #vba #ms-access
Вопрос:
Я открываю csv-файл в Excel с помощью макроса доступа. Я делаю это, чтобы получить имя файла, а затем использовать функцию TransferText для импорта файла в таблицу доступа.
Я хотел бы указать путь по умолчанию, чтобы исключить некоторую навигацию для конечного пользователя. Я пробовал ChDrive и ChDir, но имя файла getopen по-прежнему ведет меня на личный диск в сети.
Ниже приведен код, который я использую. Любые предложения или советы будут высоко оценены/ заранее благодарны…..
Set ExcelApp = CreateObject("Excel.Application") ExcelApp.Visible = True ChDrive "V:" ChDir "V:AccountingProjectsIn WorkProject Database" RawData = "" RawData = ExcelApp.Application.GetOpenFilename Set ExcelApp = Nothing DoCmd.TransferText acImportDelim, , "tbl_Stage", RawData, True
Ответ №1:
Вам необходимо изменить диск и папку объекта Excel. В данный момент вы меняете диск и папку объекта доступа.
Excelapp.DefaultFilePath = "V:AccountingProjectsIn WorkProject Database"
Если вы не используете очень старую версию Excel, вы можете использовать объект FileDialog для большего контроля:
Set FD = Excelapp.FileDialog(msoFileDialogFilePicker) With FD .InitialFileName = ActiveDocument.Path .Show End With exFile = FD.SelectedItems(1)
Комментарии:
1. @дэвид….. Спасибо. Это сделало свое дело и сделает его намного лучше для конечных пользователей. Еще раз спасибо…….