J'utilise le code suivant pour enregistrer 50 fois (donc dans 50 endroits différents) un fichier nommé "Paie 2014" dans un dossier nommé "RH" puis dans un sous dossier "2014"
- Le dossier est déjà crée selon les cas
- Le sous dossier est déjà crée selon les cas
Je voulais que lorsque le dossier ou sous dossier n'existe pas il me le crée :
Mais j'ai une erreur 76 sur MkDir
Ci dessous le code que j'utilise
Sub Creation_Paie_dossier_hotels()
Workbooks.Open ("U:\RH\Paie\Paie 2014.xlsm")
Windows("Macro RH 2014.xlsm").Activate
Dim codehotel
En général, j'utilise ce code qui permet de t'affranchir du fait qu'un dossier existe ou pas.
Code:
Private Declare Function SHCreateDirectoryEx Lib "Shell32.dll" Alias "SHCreateDirectoryExA" _
(ByVal hwnd As Long, ByVal pszPath As String, ByVal lngsec As Long) As Long
Sub Creation_Dossier()
SHCreateDirectoryEx 0&, "C:\A\B\C\D\E", 0&
End Sub
Merci pour ta réponse, mais je n'arrive pas à adapter ton code.
Peux tu stp m'aider à l'adapter ?
Private Declare Function SHCreateDirectoryEx Lib "Shell32.dll" Alias "SHCreateDirectoryExA" _
(ByVal hwnd As Long, ByVal pszPath As String, ByVal lngsec As Long) As Long
Sub Creation_Dossier()
SHCreateDirectoryEx 0&, "S:\Dossier\Ressources Humaines\2014", 0&
End Sub
C'est cela ?
Faut-il que je lance une 1ère macro avec ce code pour création et 1 2ème pour enregistrement ?
Ou la création et l'enregistrement peuvent être réalisés ensemble ?
Private Declare Function SHCreateDirectoryEx Lib "Shell32.dll" Alias "SHCreateDirectoryExA" _
(ByVal hwnd As Long, ByVal pszPath As String, ByVal lngsec As Long) As Long
Sub Creation_Dossier()
SHCreateDirectoryEx 0&, "S:\Dossier\Ressources Humaines\2014", 0&
End Sub
C'est cela ?
Faut-il que je lance une 1ère macro avec ce code pour création et 1 2ème pour enregistrement ?
Ou la création et l'enregistrement peuvent être réalisés ensemble ?
J'ai pris l'exemple que tu avais dans ton fichier joint.
J'ai rajouté et enlevé les paranthese manquantes , rajouté (Vb Directory)
Mais j ai toujours le même soucis !
Re MJ,
Merci de m'avoir répondu mais ma nullité me perdra, je ne sais pas du tout à quel moment et où insérer ce bout de code par rapport à mon code de base
Philippe
Re MJ13
Oui j'ai bien les droits d'accès et création.
C'est le code que j'utilise généralement mais en général le dossier et sous dossier existent.
Ce qui n'est pas le cas pour le dossier Ressources_humaines\2014\
L76e débogeur d'Excel s'arrête à MkDir en mettant Erreur 76