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: Apri il 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 accederePin


Picture of Anson Antony
Anson Antonio
Anson è un autore collaboratore e fondatore di www.askeygeek.com. Imparare qualcosa di nuovo è sempre stata la sua passione, ASKEYGEEK.com è il risultato della sua passione per la tecnologia e il business. Ha un decennio di esperienza versatile in Business Process Outsourcing, Finanza e Contabilità, Informatica, Eccellenza Operativa e Business Intelligence. Durante il mandato, ha lavorato per organizzazioni come Genpact, Hewlett Packard, M*Modal e Capgemini in vari ruoli e responsabilità. Al di fuori degli affari e della tecnologia, è un appassionato di cinema che trascorre ore insieme guardando e imparando il cinema e anche un regista!

9 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 email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Congratulazioni!
L'hai fatta,
Non chiudere!

Alzati 60.000 Crediti per personaggi UberTTS gratis!!!

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

UberTTS
28
Share to...