Modifier un chemin d'accès opur une importation de données externes

titoo22 Messages postés 15 Date d'inscription vendredi 15 décembre 2000 Statut Membre Dernière intervention 12 août 2008 - 12 août 2008 à 11:46
FaroukVazaha Messages postés 42 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 11 septembre 2010 - 18 août 2008 à 13:46
Salut tout le monde,
J'ai créé une macro pour importer et trier des données automatiquement mais comme nous sommes en réseau, il faut que l'utilisateur puisse changer le chemin d'accès. J'ai donc créé une case dans un autre onglet avec le chemin à entrer mais quand je rentre l'adresse de ma case dans la macro, il me dit que la formulation n'est pas bonne qu'il faut que je rentre un argument ou une ). Voici ce que j'ai écrit, dite moi où se trouve ma ou mes erreurs si vous les trouvez...
   With ActiveSheet.QueryTables.Add(Connection:=Array( _
        "OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=Sheets("lancement").Cells (5,"E")" _
        , _
        ";Mode=Share Deny Write;Extended Properties=""HDR=YES;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB" _
        , _
        ":Database Password="""";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:G" _
        , _
        "lobal Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=F" _
        , _
        "alse;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _
        ), Destination:=Range("A3"))

Autre question :le fait qu'au début du programme, on aie With ActiveSheet, cela signifie-t-il qu'il faut se mettre dans la feuille où l'on veut que les données soient exportées ? (Je sais, ça peut paraître un peu bizarre comme question mais en fait je suis passée par l'enregistrement pour faire ma macro )

Merci à tous !!!
Nolwenn

1 réponse

FaroukVazaha Messages postés 42 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 11 septembre 2010
18 août 2008 à 13:46
Bonjour,






With ActiveSheet = feuille en cours d'utilisation, à remplacer éventuellement par la feuille avec laquelle tu travailles






Tu as donc créer ta macro avec la cellule : Cells (5,"E") et tu rangeras le résultat dans :
Destination:=Range("A3")






Cells (5,"E")  est à remplacer par la zone qui t'intéresse
Destination:=Range("A3")  le Range("A3") est à remplacer par la zone de destination qui t'intéresse

A+
0
Rejoignez-nous