Demande de conseils basiques VBA Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
A
ArthurGDB
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 5 février 2017
Version d'Excel : 15.17

Message par ArthurGDB » 10 février 2017, 17:12

Je suis vraiment désolé Braters, mais j'ai pas trop compris cette étape ...

EDIT : si c'est simplement lancer une macro avec cette formule pour savoir comment Excel considère mon nom d'utilisateur, j'obtiens un pop-up avec seulement "Utilisateur de Microsoft Office"
B
Braters
Membre dévoué
Membre dévoué
Messages : 579
Appréciations reçues : 10
Inscrit le : 23 décembre 2015
Version d'Excel : 2013 FR

Message par Braters » 14 février 2017, 11:13

Bonjour,

je ne sais pas si tu as trouvé ta solution. mais je t'en propose une.

Dans un nouveau fichier excel, tu lances la macro suivante :
Sub VariablesEnvironnement()
Dim i As Integer, sEnv As String
Dim Pos As Integer
    ActiveWorkbook.Worksheets.Add
    i = 1
    Do
        sEnv = Environ(i)
        If Len(sEnv) = 0 Then Exit Do
        Pos = InStr(Environ(i), "=")
        Cells(i, 1) = Left(sEnv, Pos - 1)
        Cells(i, 2) = Right(sEnv, Len(sEnv) - Pos)
        i = i + 1
    Loop
End Sub
Une liste de commande va apparaître avec ce que cette commande renvoie.

Ensuite dans une seconde macro, tu peux tester ces commandes à l'aide de cette macro :
Sub Tst()
    MsgBox Environ("USERNAME")
End Sub
En changeant le "USERNAME" par la commande de la colonne A que tu veux.

Tout ceci te permettra d'incrémenter une variable dans ton chemin afin que celui-ci s'adapte à l'utilisateur du fichier en question.

Je reste dispo si tu as des questions !

A plus !
:btres:
A
ArthurGDB
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 5 février 2017
Version d'Excel : 15.17

Message par ArthurGDB » 14 février 2017, 17:15

Bonjour Braters,

J'ai bien réussi à récupérer mon nom d'utilisateur via le code que tu m'as fourni et la commande USER. Le nom affiché est le même que ce qu'il devrait être dans le chemin.
En revanche toujours impossible d'implémenter la variable.

J'ai vraiment très peu de compétences en VBA mais j'ai essayé de poser la variable nom = Application.UserName ; nom = UserName ; nom = USER, et de poser mon chemin en
chemin = "/Users/" & nom & "/Google Drive/Docs Team/10. Knowledge Managment/Fiches/"
Ca ne fonctionne pas.

J'ai du mal à comprendre comment adapter mon chemin et de faire quelque chose de différent de ce que tu m'as proposé comme code à la base.

En tout cas la macro n'accepte pas le chemin posé comme tel.

As-tu une idée ?
B
Braters
Membre dévoué
Membre dévoué
Messages : 579
Appréciations reçues : 10
Inscrit le : 23 décembre 2015
Version d'Excel : 2013 FR

Message par Braters » 15 février 2017, 09:32

Avec quelle commande obtiens-tu le nom utilisé dans ton chemin ?

Dans tous les cas, pour le mettre dans une variable, tu fais comme suit :
nom = Environ("USERNAME")
En changeant le "USERNAME" par la commande voulue.

Ainsi ton chemin doit fonctionner et ce peu importe l'utilisateur !

A plus !
:btres:
A
ArthurGDB
Jeune membre
Jeune membre
Messages : 13
Inscrit le : 5 février 2017
Version d'Excel : 15.17

Message par ArthurGDB » 16 février 2017, 17:40

Nickel !! Ça marche parfaitement ! À voir simplement la compatibilité avec Windows. Merci infiniment Braters pour tes conseils et ta patience ! J'ai une dernière étape à réussir pour finaliser mon projet mais je vais ouvrir un autre topic car cela n'a pas de lien avec celui-ci.

Merci encore,
Arthur
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message