Acceder a un fichier dont le chemin est variable VBA

Niouf

XLDnaute Occasionnel
Bonjour !

Petite question, je met au point une macro dans mon entreprise, et j'aimerai au'elle soit utilisable par absolument tout le monde.
Le problem est, que cette macro remplace un fichier a 3 reprises, et le chemin d'acces a ce fichier contient entre autre l'identifiant de la personne qui utilise cette macro.
L'ideal serait d'avoir le nom de l'utilisateur de la macro a l'instant T, variable ...

Une idee ?

Code :

ChDir "P:\Foreman\My Folder"
Workbooks.OpenText Filename:="P:\Foreman\My Folder\ie worklist.xls", Origin _
:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
TrailingMinusNumbers:=True
ChDir "C:\Users\nomutilisateur\AppData\Roaming\Microsoft\Templates"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\nomutilisateur\AppData\Roaming\Microsoft\Templates\ie worklist.xlt", _
FileFormat:=xlTemplate8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False

PS Comment faut faire pour inserer du code proprement dans les discussions ? :p
 

tototiti2008

XLDnaute Barbatruc
Re : Acceder a un fichier dont le chemin est variable VBA

Re,

dans ce cas renverrait un message d'erreur...

Ah ok, je ne savais pas :)

En revanche, les fichiers censes etres presents dans le dossier "Template" de l'utilisateur, se retrouvent par je ne sais quelle operation sur le Disque commun de l'entreprise.

Tu peux créer un dossier sur le réseau pour tout les modèles Office
ça peut se règler dans les options de Word
Options avancées
Bouton Emplacement des fichiers - Modèles groupe de travail
 

Niouf

XLDnaute Occasionnel
Re : Acceder a un fichier dont le chemin est variable VBA

Hi GUYS !

Le ChDrive Left(chemin1, 1) a solutionne mon probleme dans les 2 cas, donc parfait.
Pierrot est il capable de m'expliquer a quoi correspond cette commande ?

Pour les droits d'acces tototiti, les dossiers speciaux Desktop et Template sont personnels a l'utilisateur, donc je n'ai pas trop cherche de ce cote.

Bref, je suis face a un nouveau probleme. (VBA et ses peripeties ...)

Ma macro accede a un fichier commun :

Code:
chemin3 =K:\Planned Orders Daily\XXXXX"

ChDrive Left(chemin3, 1)
ChDir chemin3
       ActiveWorkbook.SaveAs Filename:= _
         "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
          xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
          , CreateBackup:=False

Selon les PC, le disque commun nomme DATA13, ne porte pas la meme Lettre (K, C...)
Et c'est la que ma macro foire !

Il me semble qu'il est possible d'eviter cette lettre et de passer par le nom du Disque commun non ?
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Acceder a un fichier dont le chemin est variable VBA

Bonjour à tous :),

Pierrot est il capable de m'expliquer a quoi correspond cette commande ?
Oui il peut le faire ;)
ça permet de changer de lecteur, de passer du C:\ au D:\ par exemple

Si tu passe par le nom du serveur (\\serveur\dossier1\...) tu ne pourras plus utiliser ChDrive, je crois

D'ailleurs personnellement je ne les utilise pas en général, plutôt que

Code:
ChDrive Left(chemin1, 1)     
ChDir chemin1
     ActiveWorkbook.SaveAs Filename:= _
         "ie worklist.xlt", _
         FileFormat:=xlTemplate8, Password:="", WriteResPassword:="", _
         ReadOnlyRecommended:=False, CreateBackup:=False

je préfère

Code:
      ActiveWorkbook.SaveAs Filename:= _
         chemin1 & "\ie worklist.xlt", _
         FileFormat:=xlTemplate8, Password:="", WriteResPassword:="", _
         ReadOnlyRecommended:=False, CreateBackup:=False
 

Niouf

XLDnaute Occasionnel
Re : Acceder a un fichier dont le chemin est variable VBA

Alors,

Avec ceci :
Code:
chemin2 = CreateObject("WScript.Shell").specialFolders("Desktop")
chemin3 = "\\DATA13\Planned Orders Daily\Azher"

'Saved on the User Desktop and in DATA13 with the name "Planned Orders & Current Date"
    ChDrive Left(chemin2, 1)
    ChDir chemin2
    ActiveWorkbook.SaveAs Filename:= _
        "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
    
     ChDrive Left(chemin3, 1)
    ChDir chemin3
     ActiveWorkbook.SaveAs Filename:= _
            "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
            xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False

Erreur : Invalid procedure call or argument

Code:
chemin2 = CreateObject("WScript.Shell").specialFolders("Desktop")
chemin3 = "\\DATA13\Planned Orders Daily\Azher"

'Saved on the User Desktop and in DATA13 with the name "Planned Orders & Current Date"
    ChDrive Left(chemin2, 1)
    ChDir chemin2
    ActiveWorkbook.SaveAs Filename:= _
        "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
    

    ActiveWorkbook.SaveAs Filename:= _
            chemin3 & "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
            xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False

Erreur : 1004
Method 'SaveAs' of object'_Workbook failed
 

Niouf

XLDnaute Occasionnel
Re : Acceder a un fichier dont le chemin est variable VBA

Pas d'erreur avec ceci :

Code:
chemin3 = "\\qlandis\DATA13\Planned Orders Daily\Azher" & "\"

'Saved on the User Desktop and in DATA13 with the name "Planned Orders & Current Date"
    ChDrive Left(chemin2, 1)
    ChDir chemin2
    ActiveWorkbook.SaveAs Filename:= _
        "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
    
    ChDir chemin3
    ActiveWorkbook.SaveAs Filename:= _
            "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
            xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False

Mais pas de fichier dans la 2eme destination voulue :(
 

Pierrot93

XLDnaute Barbatruc
Re : Acceder a un fichier dont le chemin est variable VBA

Bonjour,

As tu essayé ceci, suggéré par Toto:) :
Code:
chemin3 = "\\qlandis\DATA13\Planned Orders Daily\Azher" & "\"
     ActiveWorkbook.SaveAs Filename:= _
             chemin3  & "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
             xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
             , CreateBackup:=False

bonne journée
@+
 

Niouf

XLDnaute Occasionnel
Re : Acceder a un fichier dont le chemin est variable VBA

Je viens enfin vous remercier :p

Tout fonctionne avec ceci :

Code:
'Saved on the User Desktop and in DATA13 with the name "Planned Orders & Current Date"
    ChDrive Left(chemin2, 1)
    ChDir chemin2
    ActiveWorkbook.SaveAs Filename:= _
        "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
    
    ActiveWorkbook.SaveAs Filename:= _
           chemin3 & "Planned Orders" & " " & Format(Date, "dd-mm-yyyy") & ".xls", FileFormat:= _
            xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False

Merci a vous deux :)
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 976
dernier inscrit
kaizertv2001@gmailcom