Olá Pessoal,
Estou precisando selecionar uma pasta excel para importar os dados via formulário e já consegui um exemplo de como importar aqui no fórum mesmo, porém ele está com pastas e arquivos fixos e eu quero que o usuário selecione, aí estou tentando utilizar o código abaixo para definir o nome da pasta e do arquivo, porém o nome do Path em Origem já vem com o nome do arquivo junto e não sei como separar somente o Path, alguém poderia me dar uma luz?
Private Sub bt_Abrir_Click()
Dim fd As Object
Dim x As String
Set fd = Application.FileDialog(1)
With fd
.ButtonName = "Abrir"
.Title = "Selecione o local onde se encontra o arquivo..."
If .Show Then
Selecionarpasta = .SelectedItems(1)
x = Selecionarpasta
End If
End With
Me.Arquivo = SeparaNomes(x, "\", 3)
Me.Origem = Selecionarpasta
Set fd = Nothing
End Sub
O código para importar onde eu pretendo colocar o caminho e nome do arquivo é este:
Dim strPathFile As String, strFile As String, strPath As String
Dim blnHasFieldNames As Boolean
Dim intWorksheets As Integer
Dim strWorksheets(1 To 1) As String
Dim strTables(1 To 1) As String
strWorksheets(1) = "Plan1"
strTables(1) = "tbl_teste"
blnHasFieldNames = True
strPath = "C:\teste\"
For intWorksheets = 1 To 1
strFile = Dir(strPath & "Pasta1.xlsx")
Do While Len(strFile) > 0
strPathFile = strPath & strFile
DoCmd.TransferSpreadsheet acImport, _
acSpreadsheetTypeExcel9, strTables(intWorksheets), _
strPathFile, blnHasFieldNames, _
strWorksheets(intWorksheets) & "$"
strFile = Dir()
Loop
Next intWorksheets
Estou precisando selecionar uma pasta excel para importar os dados via formulário e já consegui um exemplo de como importar aqui no fórum mesmo, porém ele está com pastas e arquivos fixos e eu quero que o usuário selecione, aí estou tentando utilizar o código abaixo para definir o nome da pasta e do arquivo, porém o nome do Path em Origem já vem com o nome do arquivo junto e não sei como separar somente o Path, alguém poderia me dar uma luz?
Private Sub bt_Abrir_Click()
Dim fd As Object
Dim x As String
Set fd = Application.FileDialog(1)
With fd
.ButtonName = "Abrir"
.Title = "Selecione o local onde se encontra o arquivo..."
If .Show Then
Selecionarpasta = .SelectedItems(1)
x = Selecionarpasta
End If
End With
Me.Arquivo = SeparaNomes(x, "\", 3)
Me.Origem = Selecionarpasta
Set fd = Nothing
End Sub
O código para importar onde eu pretendo colocar o caminho e nome do arquivo é este:
Dim strPathFile As String, strFile As String, strPath As String
Dim blnHasFieldNames As Boolean
Dim intWorksheets As Integer
Dim strWorksheets(1 To 1) As String
Dim strTables(1 To 1) As String
strWorksheets(1) = "Plan1"
strTables(1) = "tbl_teste"
blnHasFieldNames = True
strPath = "C:\teste\"
For intWorksheets = 1 To 1
strFile = Dir(strPath & "Pasta1.xlsx")
Do While Len(strFile) > 0
strPathFile = strPath & strFile
DoCmd.TransferSpreadsheet acImport, _
acSpreadsheetTypeExcel9, strTables(intWorksheets), _
strPathFile, blnHasFieldNames, _
strWorksheets(intWorksheets) & "$"
strFile = Dir()
Loop
Next intWorksheets