Come utilizzare VBA per importare dati da Excel ad Access

Autore: Clyde Lopez
Data Della Creazione: 17 Agosto 2021
Data Di Aggiornamento: 18 Aprile 2024
Anonim
Creare database access con importazione dati da excel
Video: Creare database access con importazione dati da excel

Contenuto

Imparare a utilizzare Visual Basic, Applications Edition per importare dati in Access può rendere l'applicazione di database più dinamica. In VBA, è possibile utilizzare una combinazione di oggetti per aprire un foglio di lavoro di Excel e importare i dati in una tabella di accesso. Utilizzare la libreria di oggetti per Microsoft Excel in VBA per aprire il foglio di lavoro. L'oggetto Recordset viene utilizzato per aprire una tabella in Access e salvare i dati importati da Excel. L'utilizzo di VBA per importare i dati riduce in modo significativo il tempo trascorso a eseguire il processo manualmente.


indicazioni

Importa i dati da Excel ad Access utilizzando la libreria di oggetti di Excel (Jupiterimages / Photos.com / Getty Images)
  1. Apri Microsoft Excel e digita "data1" in A2 e "data2" in B2. Premere Ctrl + S per salvare il documento. Salva il foglio di lavoro in "C: Temp " con il nome "dataToImport.xlsx". Fare clic su Salva e quindi chiudere Excel.

  2. Avviare Microsoft Access, fare clic su "Nuovo database" e fare clic su "Crea". Fai clic su "Strumenti database" e fai clic su "Visual Basic" per aprire l'editor VB. Fare clic sul menu "Inserisci" e fare clic su "Modulo" per inserire un nuovo modulo di codice. Fai clic sul menu "Strumenti" e quindi su "Riferimenti" e seleziona la casella accanto a "Libreria oggetti di Microsoft Excel '.

  3. Inizia digitando il seguente codice VBA per creare una nuova sottoprocedura:


    Private Sub importExcelData ()

  4. Immettere il seguente codice per creare le variabili da utilizzare per leggere Excel:

    Dim xlApp As Excel.Application Dim xlBk As Excel.Workbook Dim xlSht As Excel.Worksheet

  5. Immettere il codice seguente per creare le variabili da utilizzare in Access:

    Dim dbRst As Recordset Dim dbs As Database Dim SQLStr As String

  6. Immettere il seguente codice per definire gli oggetti bancari e anche per definire quale foglio di lavoro utilizzare:

    Imposta dbs = CurrentDb Set xlApp = Excel.Application Set xlBk = xlApp.Workbooks.Open ("C: Temp dataToImport.xlsx") Imposta xlSht = xlBk.Sheets (1)

  7. Crea una nuova tabella con due colonne in Access per importare i dati di Excel. Immettere il seguente codice per creare la tabella utilizzando l'oggetto DoCmd:

    SQLStr = "CREATE TABLE excelData (columnOne TEXT, columnTwo TEXT)" DoCmd.SetWarnings False DoCmd.RunSQL (SQLStr)


  8. Aprire la tabella appena creata utilizzando un oggetto Recordset. Inserisci il codice seguente per aprire la tabella e aggiungere una nuova riga:

    Impostare dbRst = dbs.OpenRecordset ("excelData") dbRst.AddNew

  9. Immettere il seguente codice per ottenere i valori nel foglio di lavoro di Excel, salvarli nella tabella e aggiornare il record:

    xlSht.Range ("A2") Seleziona dbRst.Fields (0) .Value = xlSht.Range ("A2") Valore xlSht.Range ("B2") Seleziona dbRst.Fields (1) .Value = xlSht. Intervallo ("B2"). Valore dbRst.Update

  10. Completa la procedura digitando il seguente codice VBA:

    dbRst.Close dbs.Close xlBk.Close End Sub

  11. Premere F5 per eseguire la procedura. I dati nel foglio di lavoro di Excel verranno importati nella tabella di accesso.