Macro en VBA import des données vers Acess

Bonjour,

Je voudrais savoir par quel moyen je pourrais mettre à jour une table (Un fichier access) à partir d'un fichier excel à l'aide d'une macro ou VBA ou autre.

Pour exemple je vous ai joints 2 fichiers : un acces et l'autre excel
L'idée serait que le fichier excel se déverse dans le fichier access.

Merci pour votre aide.
Mad
Configuration: Windows XP
Internet Explorer 6.0

8 réponses

  1. Modérateur
    Salut,

    tu peux peux voir la macro 'TransférerFeuilleCalcul', elle devrait te convenir.

    Pour exemple je vous ai joints 2 fichiers : un acces et l'autre excel
    Il n'y a pas de pièces jointes dans ce forum...
    0
    1. Bonjour,

      Oui désolé c'est un copier coller.

      Comment je dois procéder pour que les données importée d'excel n'éface pas les données existantes dans le fichier acces mais viennent à la suite.

      Merci
      0
      1. Modérateur
        La macro ajoute les données à celles existantes...
        0
        1. Mais la macro n'existe pas encore et aucune relation entre acess et excel n'est créee.

          Mad
          0
          1. Modérateur
            Si c'est pour une importation, pas besoin, par contre si c'est pour établir un 'temps réel' entre les modifs d'excel et leur placage sur access, c'est une autre paire de manches...
            0
        2. Bonjour,

          Ben je voudrais de façon à ce qu'une ou 2 fois par mois mettre à jour une table access depuis excel sans que les données existantes s'éffacent.
          0
          1. Modérateur
            donc, il faut voir ce que j'ai dit au début...
            0
        3. Contributeur
          Bonjour à tous,

          Ci joint une procédure tirée de mon grenier (ca nous rajeunit pas!); Excuses moi Wilfried de ne pas attendre ta proposition , mais justement ca me rajeunit en repensant au boulot/ADO effectué avec MichelXLD et Thierry

          Attention si lidentifiant de la table cible est un numéroauto!!! dans ce cas ne pas importer de données Excel dans ce champ...

          Sub importer_Excel_Access()
              'Michel_M 19/05/04 pour Excel-downloads
              'a partir du site de Fred Sigonneau (Merci)
              Dim tabase As Object
              Dim requete As Object
              Dim laTable As String
              Dim lig As Long, cptr As Long
              Dim deb As Byte ' début avant ligne 256 sinon type integer
              
              laTable = "nomde_latablecible_danstabase"
              Set tabase = CreateObject(ADODB.Connection)
              Set requete = CreateObject(ADODB.Recordset)
              With tabase
                  .Provider = "Microsoft.JET.OLEDB.4.0"
                  .Open "chemin_de_tabase\nom_detabase.mdb"
              End With
          
              With requete
                  .activeConnection = tabase
                  .Open laTable, lockType:=adLockOptimistic
              End With
              With Sheets(1) ' tableau en feuille1 et en colonne 1
                  lig = .Range("A65536").End(xlUp).Row
                  deb = 2 'début des occurences dans excel
                  With requete
                      For cptr = deb To lig
                          .addNew
                               .Fields("Nom").Value = .Cells(lig, 1)
                              .Fields("prenom").Value = .Cells(lig, 2)
                              .Fields("sexe").Value = .Cells(lig, 3)
                           .Update
                      Next
                  End With
              End With
          
              requete.Close
              labase.Close
          
              End Sub
          
          --
          Cordialement,
          Michel
          0
          1. Contributeur
            bonjour michel

            Pas de problèmes surtout qu'elle est belle la macro

            @ plus
            0