Création dossier VBA (MKDIR)

matthieu2701

XLDnaute Occasionnel
Bonjour,

J’essaie de créer un dossier avec la fonction MKDIR mais j'obtiens le message suivant : Erreur d'éxécution '75'. Erreur d'accès Chemin/Fichier.

Je viens vers vous pour que vous m'apportiez votre aide.

Merci par avance.
 

Pièces jointes

  • Normalisation courriers et mails Réclas.xls
    38.5 KB · Affichages: 67
  • Normalisation courriers et mails Réclas.xls
    38.5 KB · Affichages: 63
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Création dossier VBA (MKDIR)

Bonjour.

Gilbert_RGI, cette procédure ne doit pas entrainer d'erreur de compilation si la référence est cochée:
VB:
Sub test1()
Dim FSO As FileSystemObject
Set FSO = New FileSystemObject
End Sub
Pas plus que celle là d'ailleurs :
VB:
Sub test2()
Dim FSO As New FileSystemObject
End Sub
De plus, en tapant FSO. les suites possibles sont suggérées, ce qui prouve qu'on aura des liaisons anticipées (résolues au moment de la compilation et ne nécessitant donc plus au moment de l'exécution la recherche dans une table du nom de la méthode ou propriété invoquée).

matthieu2701, construisez le nom de fichier avec une concaténation appropriée des éléments voulus. Vous devriez pouvoir utiliser l'instruction Name LaRéfDuFicherWordSurLeBureau As CurDir & "\" & NomFichier & ".docx" pour le transférer dans le répertoire courant qui vient d'être créé avec ma fonction CheminCourantAssumé.
 

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

matthieu2701, construisez le nom de fichier avec une concaténation appropriée des éléments voulus. Vous devriez pouvoir utiliser l'instruction Name LaRéfDuFicherWordSurLeBureau As CurDir & "\" & NomFichier & ".docx" pour le transférer dans le répertoire courant qui vient d'être créé avec ma fonction CheminCourantAssumé.

J'ai pas tout compris :eek:
 

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

Bonjour.
Moi non plus je n'avais pas tout compris de ce que vous voulez faire.
Tapez Name dans une procédure puis touche F1, sélectionnez VBA | Name, bouton Aide.

Je me suis peut être mail exprimé. Dans le nouveau fichier joint, j'ai rajouté un bouton "Importer la réclamation".

Je souhaite que celui ci récupère un .doc vierge et qu'il l'importe dans le fchier excel. A partir de là, la réponse à la réclamation sera rédigée. Jusqu'ici tout va bien.

Néanmoins, je n'arrive pas à donner le nom que je souhaite à ce .doc qui est importé dans excel. Je veux qu'il soit renommé avec les infos qu'il y a dans les cellules B6 - C6 - D6 - E6.

Une fois que la réclamation rédigée, je souhaite que ce .doc soit enregistré dans "Q:\CLI11PTE\AA-RECLAMATION GAZ\Historique des Réclamations\" _ & T(1, 3) & " " & [C2])

J'espère que c'est plus claire ;)
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Création dossier VBA (MKDIR)

Je ne comprends toujours pas, voire plus du tout. C'est un fichier Word ou un classeur résultant de l'ouverture d'un fichier word par excel ?
Quoi qu'il en soit CurDir contient le dossier courant du lecteur courant. On peut soit le préciser comme chemin pour un nouveau nom à l'instruction Name, soit ne pas le préciser à la méthode SaveAs.
Quant aux concaténations d'éléments (opérateur &) vous savez déjà faire.
 

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

Je ne comprends toujours pas, voire plus du tout. C'est un fichier Word ou un classeur résultant de l'ouverture d'un fichier word par excel ?
Quoi qu'il en soit CurDir contient le dossier courant du lecteur courant. On peut soit le préciser comme chemin pour un nouveau nom à l'instruction Name, soit ne pas le préciser à la méthode SaveAs.
Quant aux concaténations d'éléments (opérateur &) vous savez déjà faire.

C'est un fichier Word que j'importe dans Excel par une macro.

Oui, la concaténation je sais faire mais je n'arrive toujours pas à donner un nom à mon fichier Word que j'importe sur excel.
 

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

Sinon il y a aussi FileCopy source, destination
Marche comme Name sauf que le fichier source ne disparaît pas.

Bonjour,

J’essaie depuis hier mais je n'y arrive pas.

Voici le code :
Code:
Sub ImporterRecla()
'
' ImporterRecla Macro
'
With Sheets("Réclamations")
    Nom = .Range("D6")
    PCE = .Range("D2")
    Rec = .Range("B6")
End With
'
  ActiveSheet.OLEObjects.Add(Filename:="C:\Users\b90570\Desktop\TEST.doc", _
        Link:=False, DisplayAsIcon:=True, IconFileName:= _
        "C:\windows\Installer\{90120000-0012-0000-0000-0000000FF1CE}\wordicon.exe", _
        IconIndex:=0, IconLabel:="Nom.doc").Select
        

End Sub

Merci par avance. :D
 
Dernière édition:

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

Dans la macro ci-dessus, j'ai rajouté ça
Code:
If Rec = RClient Or MNE Then
MsgBox "Votre réclamation n'est pas une IA ou une RComplexe", vbCritical, "Attention"
Exit Sub
End If
mais cela ne fonctionne pas.

Ai-je fais une erreur ?

Merci
 

Pièces jointes

  • Normalisation courriers et mails Réclas.xls
    75.5 KB · Affichages: 30
  • Normalisation courriers et mails Réclas.xls
    75.5 KB · Affichages: 30

Dranreb

XLDnaute Barbatruc
Re : Création dossier VBA (MKDIR)

Bonjour.

Oui, ce serait plutôt
VB:
If Rec = "RClient" Or Rec = "MNE" Then
Ou plutôt ça tant qu'à faire:
VB:
If Rec <> "IA" And Rec <> "RComplexe" Then
Pour le OLEObjects.Add je ne sais pas quoi vous dire, je n'ai jamais utilisé cette technique pour accéder à un fichier Word. Mais peut être serait-ce plus simple avec un lien hypertexte.
 

matthieu2701

XLDnaute Occasionnel
Re : Création dossier VBA (MKDIR)

Bonjour.

Oui, ce serait plutôt
VB:
If Rec = "RClient" Or Rec = "MNE" Then
Ou plutôt ça tant qu'à faire:
VB:
If Rec <> "IA" And Rec <> "RComplexe" Then

Ca fonctionne. Merci

Pour le OLEObjects.Add je ne sais pas quoi vous dire, je n'ai jamais utilisé cette technique pour accéder à un fichier Word. Mais peut être serait-ce plus simple avec un lien hypertexte.

J'aimerais que le fichier vierge soit sur le fichier excel et qu'en même temps qu'il soit enregistré dans le dossier qui a été créé dans "Q:\CLI11PTE\AA-RECLAMATION GAZ\Historique des Réclamations\" _ & T(1, 3) & " " & [C2])
 

Discussions similaires

Statistiques des forums

Discussions
312 228
Messages
2 086 420
Membres
103 205
dernier inscrit
zch