Comment utiliser vba pour importer des données à partir d`excel dans l`accès

Apprendre à utiliser Visual Basic pour Applications pour importer des données dans Access peut rendre votre application de base de données plus dynamique. Dans VBA, vous pouvez utiliser une combinaison d`objets pour ouvrir un classeur Excel existant et importer certaines données à une table dans Access. Utilisez la bibliothèque d`objets Microsoft Excel en VBA pour ouvrir le classeur. L`objet Recordset est utilisé pour ouvrir une table existante dans Access et enregistrer des données à partir d`Excel en elle. Utilisation de VBA pour importer des données peut réduire considérablement la quantité de temps que vous passez à l`importation de données manuellement.

  • Lancez Microsoft Office Excel et le type "data1" en A2, et "données2" dans B2. presse "Ctrl" et "S" pour ouvrir la "Enregistrer sous" Fenêtre de dialogue et enregistrer le classeur dans "C: Temp" comme "dataToImport.xlsx." Cliquez "sauvegarder" et fermez Excel.

  • Lancez Microsoft Office Access, cliquez sur "Base de données vide" et cliquez sur le "Créer" bouton. Cliquez "Base de données Outils," et cliquez sur "Visual Basic" pour ouvrir la fenêtre de l`éditeur VB. Clique le "Insérer" menu, puis cliquez sur "Module" pour insérer un nouveau module de code. Clique le "Outils" menu, cliquez sur "Les références," et cochez la case à côté de "Microsoft Excel Object Library."

  • Commencez par taper le code VBA suivant pour créer un nouveau sous-procédure:

    Private Sub importExcelData ()

  • Tapez la commande suivante pour créer des variables que vous allez utiliser pour lire Excel:

    Dim xlApp Comme Excel.Application

    Dim xlBk Comme Excel.Workbook

    Dim xlSht Comme Excel.Worksheet

  • Tapez la commande suivante pour créer des variables que vous allez utiliser dans Access:

    Dim dbRst Comme Recordset

    dbs Dim Comme base de données




    Dim sqlstr As String

  • Tapez la commande suivante pour définir des objets de base de données et également définir le classeur Excel à utiliser:

    Set dbs = CurrentDb

    Set xlApp = Excel.Application

    Set xlBk = xlApp.Workbooks.Open ("C: Temp dataToImport.xlsx")

    Set xlSht = xlBk.Sheets (1)

  • Créer une nouvelle table avec deux colonnes dans Access pour importer des données à partir d`Excel. Tapez le code VBA suivant pour créer la table en utilisant la "DoCmd" objet:

    sqlstr = "CREATE TABLE Exceldata (columnOne TEXT, columnTwo TEXT)"

    DoCmd.SetWarnings Faux

    DoCmd.RunSQL (sqlstr)

  • Ouvrez la table que vous venez de créer à l`aide d`un objet du Recordset. Tapez la commande suivante pour ouvrir la table et ajouter une nouvelle ligne:

    Set dbRst = dbs.OpenRecordset ("Exceldata")

    dbRst.AddNew

  • Tapez ce qui suit pour obtenir des valeurs du classeur Excel, les enregistrer sur votre table et mettre à jour l`enregistrement:

    xlSht.Range ("A2").Sélectionner

    dbRst.Fields (0) .Value = xlSht.Range ("A2").Valeur

    xlSht.Range ("B2").Sélectionner

    dbRst.Fields (1) .Value = xlSht.Range ("B2").Valeur

    dbRst.Update

  • Terminez votre procédure en tapant le code VBA suivant:

    dbRst.Close

    dbs.Close

    xlBk.Close

    End Sub

  • presse "F5" pour exécuter la procédure. Les données de votre classeur Excel vient d`être importé dans votre table d`accès.

AUTRES

Comment ouvrir mdb avec vba фото

Comment ouvrir mdb avec vba

Visual Basic pour Applications (VBA) fournit aux programmeurs un outil léger pour interagir avec les produits Office…

» » » » Comment utiliser vba pour importer des données à partir d`excel dans l`accès