AugusteP
XLDnaute Nouveau
Bonjour tout le monde. Je cherche une codification VBA afin d'ouvrir un PDF contenu dans sous-dossier qui est lui-même contenu dans un dossier.
Pour être plus clair (je l'espère !), le dossier de base se nomme Super Drive, il est situé sur le bureau et le sous-dossier dans ce dernier. Le PDF quant à lui est enregisté dans ce sous-dossier. J'ai essayé certaines codifications mais cela ne me permet pas d'être utilisé sur différents PC.
Ci-dessous les lignes de code de l'application qui peut éventuellement aider à m'apporter une solution. Merci !
[/CODE]
Pour être plus clair (je l'espère !), le dossier de base se nomme Super Drive, il est situé sur le bureau et le sous-dossier dans ce dernier. Le PDF quant à lui est enregisté dans ce sous-dossier. J'ai essayé certaines codifications mais cela ne me permet pas d'être utilisé sur différents PC.
Ci-dessous les lignes de code de l'application qui peut éventuellement aider à m'apporter une solution. Merci !
VB:
Private Sub EnregistrementBCde_Click()
'Déclaration des variables
Dim Dossier As String
Dim SubDir As Variant
Dim Fso As Object
If Me.LbNomClient = "" Then
Me.LbNomClient.SetFocus
Else
' Création des subdirectories si nécessaire
Dossier = CreateObject("WScript.Shell").specialFolders("Desktop")
Set Fso = CreateObject("Scripting.FileSystemObject")
For Each SubDir In Array("Super Drive", "Commande client", Me.LbNomClient)
Dossier = Dossier & "\" & SubDir
If Not Fso.FolderExists(Dossier) Then Fso.CreateFolder Dossier
Next
Set Fso = Nothing
' Sauvegarde du fichier au format pdf .........................
Commande = " Traitement Commande N° " & Me.Txtnumcde & " du " & Format(Date, "dd-mm-yyyy") & ".pdf" '...............Références de la commande à sauvegarder
Sheets("Traitement Cde").ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=Dossier & "\" & Commande, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, OpenAfterPublish:=False
End If
Exit Sub
'Le traitement de l'erreur se p1ace en dessous d'un exit sub juste avant le end sub
1:
MsgBox "Erreur de traitement, sortie de formulaire"
Application.ScreenUpdating = True
End Sub
Sub test_repertoire(CheminDossier As String)
'
'*************************************************************************************
' fonctionne en lien avec la procédure Private Sub EnregistrementBCde_Click() *
'*************************************************************************************
Dim fs As Object
Set fs = CreateObject("Scripting.FileSystemObject") '................instanciation de la variable fs
If fs.FolderExists(CheminDossier) Then '.............................le repertoire existe donc rien à faire
Else: fs.CreateFolder CheminDossier '...................................le repertoire n'existe pas donc on le créait
End If
Set fs = Nothing '...................................................vide l'instanciation fs
End Sub