Прямо сейчас: у меня есть форма в базе данных внешнего доступа MS Access. Эта форма имеет три кнопки, все они открывают диалоговые окна файлов, чтобы выбрать и импортировать файлы Excel в внутреннюю базу данных. Например, одна кнопка выглядит следующим образом:
Private Sub Command0_Click()
'OPEN DIALOG BOX TO SELECT FILE
With Application.FileDialog(msoFileDialogOpen)
.Filters.Clear
.Filters.Add "Excel Files", "*.xlsx,*.xls"
.Filters.Add "Access Databases", "*.accdb"
.FilterIndex = 1 'Excel Files
.AllowMultiSelect = True
.ButtonName = "Open"
.InitialFileName = "C:\Users\UserName\Documents\Raw Files"
.Title = "Select a File to Import"
.InitialView = msoFileDialogViewDetails
'IMPORT Excel file 1 FILE TO DATABASE
If .Show Then
'open database
Static acc As Access.Application
Dim db As DAO.Database
Dim dbname As String
dbname = "C:\Users\Username\Documents\Back End.accdb"
Set acc = New Access.Application
acc.Visible = False
Set db = acc.DBEngine.OpenDatabase(dbname, False, False)
acc.OpenCurrentDatabase dbname
'import File
acc.DoCmd.TransferSpreadsheet acImport, , "ExcelFile1", .SelectedItems(1), True, "Sheet1!"
'close the workbook
acc.DoCmd.Quit acQuitSaveAll
db.Close
Set db = Nothing
MsgBox ("Files have been successfully loaded. Proceed with analysis")
End If
End With
End Sub
Можно ли как-нибудь объединить все три кнопки в одну. По сути, я ищу диалоговое окно с файлами, которое появляется три раза и выбирает все нужные мне файлы, а также обновляет базу данных без трех разных кнопок.
Не уверен, правильно ли я сформулировал свой вопрос, но любой код или помощь будут с благодарностью.