Como usar o vba para importar dados do excel para o acesso

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.

De esta maneira? Compartilhar em redes sociais:

LiveInternet