Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

DoCmd.TransfertSpreadsheet > Nom de la table


Sujet :

VBA Access

  1. #1
    Membre régulier
    DoCmd.TransfertSpreadsheet > Nom de la table
    Bonjour,

    J'utilise la commande DoCmd.TransfertSpreadsheet pour lier des onglet Excel à ma base de données Access.
    Exemple : DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel12Xml, "Sheet1", "C:\Fichier.xlsx", True

    Mais il y a certaines limitations !
    - Il faut connaître le nom de l'onglet. A cause du format linguistique, la feuille peut s’appeler "Sheet1" ou "Feuil1".
    - La table liée prend automatiquement le nom de cet onglet.

    Y-a-t'il moyen de contourner la chose ? J'aimerai lier le premier onglet du fichier Excel (quelque soit son nom) et changer son nom dans Access.

    Merci d'avance pour votre aide.

    Philippe

  2. #2
    Rédacteur/Modérateur

    Salut,

    une des solutions qui s'offrent à toi serait de faire une petite fonction à laquelle tu passes le chemin du classeur et qui te retourne le nom de la premiere feuille

    Une fois ce nom de feuille obtenu, tu peux l'injecter dans ta commande de liaison.
    Cycle de vie d'un bon programme :
    1/ ca fonctionne 2/ ca s'optimise 3/ ca se refactorise

    Pas de question technique par MP, je ne réponds pas

    Apprendre à programmer avec Access 2016 et Access 2019

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre régulier
    Bonjour,

    C'est bien l'idée que j'avais en tête mais cela ne résous pas le problème du nom de la table après l'avoir liée
    De plus, je ne sais plus comment on balaye le classeur