Aprender a utilizar o Visual Basic for Applications para importar dados para o Access pode fazer seu aplicativo de banco de dados mais dinâmico. No VBA, você pode usar uma combinação de objetos para abrir um livro do Excel existente e importar determinados dados a uma tabela no Access. Use a biblioteca de objetos do Microsoft Excel no VBA para abrir o livro. O objeto Recordset é usado para abrir uma tabela existente no Access e salvar dados do Excel para ele. Usando VBA para importar dados pode reduzir significativamente a quantidade de tempo que você gasta importar dados manualmente.
Lançamento do Microsoft Office Excel e tipo "data1" em A2, e "data2" em B2. pressione "Ctrl" e "S" para abrir o "Salvar como" Janela de diálogo e salvar a pasta de trabalho no "C: Temp" Como "dataToImport.xlsx." Clique "Salvar" e feche o Excel.
Lançamento do Microsoft Office Access, clique em "Banco de dados em branco" e clique no "Crio" botão. Clique "Ferramentas de banco de dados," e clique "Visual básico" para abrir a janela do editor de VB. Clique no "Inserir" menu e clique em "Módulo" para inserir um novo módulo de código. Clique no "Ferramentas" menu, clique em "Referências," e marque a caixa ao lado "Microsoft Excel
Object Library." Comece digitando o seguinte código VBA para criar novo procedimento sub:
Private Sub importExcelData ()
Digite o seguinte para criar variáveis que você vai usar para ler Excel:
Dim xlApp Como Excel.Application
Dim xlBk Como Excel.Workbook
Dim xlSht Como Excel.Worksheet
Digite o seguinte para criar variáveis que você vai usar no Access:
Dim dbRst Como Recordset
dbs Dim como banco de dados
Dim SQLStr As String
Digite o seguinte para definir objetos de banco de dados e também definem o livro do Excel para usar:
Definir dbs = CurrentDb
Definir xlApp = Excel.Application
Definir xlBk = xlApp.Workbooks.Open ("C: Temp dataToImport.xlsx")
Definir xlSht = xlBk.Sheets (1)
Criar uma nova tabela com duas colunas no Access para importar dados de Excel. Digite o seguinte código VBA para criar a tabela usando o "DoCmd" objeto:
SQLStr = "CREATE TABLE Exceldata (columnOne TEXT, columnTwo TEXTO)"
DoCmd.SetWarnings falsos
DoCmd.RunSQL (SQLStr)
Abra a tabela recém-criado usando um objeto de conjunto de registos. Digite o seguinte para abrir a tabela e adicionar uma nova linha:
Definir dbRst = dbs.OpenRecordset ("Exceldata")
dbRst.AddNew
Digite o seguinte para obter valores a partir do livro do Excel, salvá-los em sua mesa e atualizar o registro:
xlSht.Range ("A2") .Select
dbRst.Fields (0) .Value = xlSht.Range ("A2").Valor
xlSht.Range ("B2") .Select
dbRst.Fields (1) .Value = xlSht.Range ("B2").Valor
dbRst.Update
Termine o seu procedimento, escrevendo o seguinte código de VBA:
dbRst.Close
dbs.Close
xlBk.Close
End Sub
pressione "F5" para executar o procedimento. Os dados na sua pasta de trabalho Excel acaba de ser importado para o seu tabela do Access.