Codice VBA per esportare dati Excel in Access

Codice VBA per esportare dati Excel in Access
Sommario

Esporta dati Excel in Access con VBA (immagini e codice)

Che cos'è?

Questo codice VBA ti aiuta a caricare o esportare dati Excel in Access con un clic.

Perché?

Puoi esportare dati Excel in Access senza nemmeno aprire il DB di Access.

Come esportare dati Excel in Access

Passo 1: Aprire la finestra Eccellere foglio e sono arrivato al generatore di codice VBA (Alt + F11) e Apri un nuovo modulo

.Esporta dati Excel per accedere

Passo 2: Copia e incolla il codice seguente al suo interno.

Const TARGET_DB = "mioDB.accdb" 'Sostituisci 'myDB.accdb' con il nome del tuo database, assicurati che sia Excel che Access DB siano sullo stesso percorso.
Sub PushTableToAccess()
Dim cnn Come ADODB.Connection
Oscura MyConn
Dim prima come ADODB.Recordset
Dim i tanto a lungo, j quanto a lungo
Dim Rw tanto a lungo

Fogli ("Nome del foglio"). Attiva 'Sostituisci il 'Nome del foglio' con il nome del tuo foglio Excel
Rw = Intervallo("A65536").Fine(xlSu).Riga
'Fornisci l'intervallo di dati del tuo foglio Excel

Imposta cnn = Nuova ADODB.Connection
MyConn = ThisWorkbook.Path e Application.PathSeparator e TARGET_DB

Con la Cnn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.Apri MyConn
Fine con

'Sostituisci 'tblMyExcelUpload' con il nome della tua tabella in Access

Imposta primo = Nuovo ADODB.Recordset
rst.CursorLocation = adUseServer
rst.Open Source:=”tblMyExcelUpload”, ActiveConnection:=cnn, _
CursorType:=adOpenDynamic, LockType:=adLockOptimistic, _
Opzioni:=adCmdTable

'Carica tutti i record da Excel ad Access.
Per i = 2 A Rw
primo.AddNew
Per j = da 1 a 7
rst(Celle(1, j).Valore) = Celle(i, j).Valore
Il prossimo j
primo.Aggiornamento
Successivamente io

'Chiude la connessione
prima.Chiudi
cnn.Chiudi
Imposta prima = Niente
Imposta cnn = Niente

Fine sott

Passo 3:Fai clic sul pulsante Esegui o F5. (Puoi anche inserire un pulsante/una forma nel foglio Excel, quindi fare clic con il pulsante destro del mouse e assegnare questa macro per l'esecuzione ogni volta.) Hai finito con il caricamento!! I record Excel sono stati caricati con successo su Access, apri la tabella DB di Access e controlla i dati.

Esporta dati Excel per accedere

Nota: Assicurati che 'Microsoft ActiveX Data Objects Library' sia abilitato dal file Utensili - Riferimenti (utilizzare l'ultima versione [6.1 al momento di questo post]).

Adodb_Export Dati Excel a cui accedereSpillo



Immagine di Anson Antony
Anson Antonio
Anson è un autore e il fondatore di www.askeygeek.com. La sua passione per l'apprendimento di nuove cose ha portato alla creazione di askeygeek.com, che si concentra su tecnologia e business. Con oltre dieci anni di esperienza in Business Process Outsourcing, Finanza e Contabilità, Information Technology, Operational Excellence e Business Intelligence, Anson ha lavorato per aziende come Genpact, Hewlett Packard, M*Modal e Capgemini in vari ruoli. Oltre ai suoi impegni professionali, è un appassionato di cinema che ama trascorrere ore a guardare e studiare il cinema, ed è anche un regista.

8 risposte

  1. Ciao a tutti;

    Le posizioni di questi due percorsi devono essere le stesse affinché ADODBConnection funzioni? Questo è ThisWorkbook.Path e Target_DB.
    Comando dall'alto:
    ThisWorkbook.Path & Application.PathSeparator & TARGET_DB

    Oppure si può dire Workbook.Path
    "C:\MyExcelFiles\MyWorkbook.xlsx" e il database di Access TARGET_DB si trovano in
    "C:\MyDataBases\MyAccessDB.accdb"?

    Il mio codice funziona quando sia Excel WorkBook che Access DB risiedono nella stessa cartella, ma quando si trovano in cartelle diverse (struttura della libreria organizzata correttamente, il codice fallisce nel punto .Open MyConn.

    Ringrazia tutti,
    Mario,

  2. rst(Celle(1, j).Valore) = Celle(i, j).Valore

    il codice si interrompe qui
    ———-
    Errore 3265
    Impossibile trovare l'elemento nella raccolta corrispondente al nome o all'ordinale richiesto
    ———-

Lascia un commento

Il tuo indirizzo e-mail non sarà pubblicato. I campi obbligatori sono contrassegnati *

Congratulazioni!
L'hai fatta,
Non chiudere!

Accesso a UberCreate Creator Pro
gratuito!!!

Questo popup non mostrerà sta a te Ancora!!!

29
Condividi con...