Sélection mauvais dossier
bonjour, j'ai fait une macro pour sélectionner un dossier mais ça ne fonctionne pas tout à fait. En fait, il ne sélectionne pas le dernier dossier que j'ai sélectionné mais celui avant. Je ne comprends pas pourquoi. Ma macro sélectionne un répertoire et va porter dans se répertoire un fichier PDF. La macro ouvre "explorer", je sélectionne mon dossier: "test/test1/test2/test3. Je fais apparaître le répertoire sélectionné qui est bien: test/test1/test2/test3 et j'envoie le fichier dans le répertoire mais il le mets dans test/test1/test2. pas dans test3. j'ai fait plusieurs test et il mets toujours le fichier dans le répertoire parent. Quelqu'un pourrais me dire pourquoi?
voilà mon code:
Sub PrintPDF()
Dim chemin As String
Dim GestionFichier As New Scripting.FileSystemObject
Dim NewFichier As Scripting.TextStream
Dim FPDF As String
Dim Repertoire As FileDialog
Dim BEC As String
Set Repertoire = Application.FileDialog(msoFileDialogFolderPicker)
Repertoire.Show
If Repertoire.SelectedItems.Count > 0 Then
MsgBox Repertoire.SelectedItems(1)
Else
MsgBox "Aucun Répertoire Sélectionné"
End If
Sheets("soumission").Select
FPDF = "Z-" & Range("h3").Value
MsgBox FPDF
Sheets("feuille1").Select
Range("J2").Select
BEC = ActiveCell.Value
If BEC = "test1" Then
ActiveWorkbook.Worksheets("test").PageSetup.TopMargin = Application.InchesToPoints(0.75)
ActiveWorkbook.Worksheets("test").PageSetup.PrintArea = "A1:i138"
ActiveWorkbook.Worksheets("test").ExportAsFixedFormat Type:=xlTypePDF, Filename:=FPDF & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
If BEC = "test2" Then
ActiveWorkbook.Worksheets("test").PageSetup.TopMargin = Application.InchesToPoints(0.75)
ActiveWorkbook.Worksheets("test").PageSetup.PrintArea = "A1:i138"
ActiveWorkbook.Worksheets("test").ExportAsFixedFormat Type:=xlTypePDF, Filename:=FPDF & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
If BEC = "test3" Then
ActiveWorkbook.Worksheets("test").PageSetup.TopMargin = Application.InchesToPoints(0.75)
ActiveWorkbook.Worksheets("test").PageSetup.PrintArea = "A1:i285"
ActiveWorkbook.Worksheets("test").ExportAsFixedFormat Type:=xlTypePDF, Filename:=FPDF & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
End Sub
merci pour votre aide, toujours très apprécié.
Personne ne peux m'aider? Je patoge sur cela depuis 7h ce matin, il est 2h30 et je n'ai toujours pas de solution. Tous les forums que j'ai regarder ne me mène nulle part.
J'ai essayé de sauvegarder mon fichier dans c:\ et il ne fait pas la sauvegarde. C'est vraiment bizarre.
merci de votre aide.
J'ai trouver mon problème, je vous laisse la solution si jamais sa peut servir à quelqu'un.
solution:
à la 3e ligne activeworkbook, à filename:= il faut lui donner le path. j'ai rajouter à ma macro une variable zpath et je l'appelle dans le filename et ça fonctionne très bien.
voici la correction:
Dim Zpath As String
Zpath = repertoire.SelectedItems(1) & "\"
ActiveWorkbook.Worksheets("test").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Zpath & NoSoum & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Merci, moi aussi ça m'a aidé !