Bonjour,

J'ai un soucis, je n'arrive pas à enregistrer une copie d'une feuille excel et son PDF dans un dossier de destination précis.

En quelques mots voici ce que je fais avec une macro



1. impression d'une feuille excel
2. enregistrement d'une copie d'un ensemble de cellule d'une feuille dans nouveau classeur et dans un dossier spécifique ( je n'arrive pas à enregistrer sous uniquement une feuille, j'ai donc fait une macro qui copie la page 1 de la feuille 1 dans un nouveau classeur. cela fonctionne bien comme ça)
le nom du fichier est généré par le contenu de certaines cellules

3.création d'un fichier au format PDF, le nom du fichier est également généré, puis enregistré dans un dossier spécifique


Tout fonctionne sauf l'enregistrement de la copie et du PDF.
lorsque je suis sur le C: \ et que spécifie le chemin suivant C:\Users\vincent\Desktop\pdf, l'enregistrement se fait bien dans le Dossier "PDF"
Dès que je copie le fichier excel sur sur D:\ par exemple, l’enregistrement se fait dans le dossier user\document du C: et non dans le dossier d:\ spécifié dans la macro.
Avant cela fonctionné très bien et depuis que j'ai coupé lé dossier et recollé cela ne fonctionne plus.
voici le VBA

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Sub Bouton68_Cliquer()
' imprimfac Macro
 
    Range("C1").Select
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
        IgnorePrintAreas:=False
 
'export facture au format pdf et copie xls
info1 = Sheets("facture").Range("M13")
info2 = Sheets("Historique factures").Range("E2")
info3 = Sheets("Historique factures").Range("A2")
Nom = "F480_" & info1 & "0" & info2 & "_000" & info3
 
ThisWorkbook.Save
Range("A1:G43").Select
Range("E1").Activate
    Selection.Copy
    Workbooks.Add
    ActiveSheet.Paste
    Application.CutCopyMode = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ChDir "D:\dossier1\dosssier2\dossier3\dossier3"
    ActiveWorkbook.SaveAs Filename:=(Nom), FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
 
ThisWorkbook.Activate
If MsgBox("Avez- vous valider votre facture afin de générer le numéro automatique ?", vbYesNo, "IFA Oise vous informe") = vbYes Then
 
ChDir "D:\dossier1\dosssier2\dossier3\dossier3"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=(Nom), Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, From:=1, To:=1, OpenAfterPublish:=True
 
 
End If
End Sub

merci d'avance pour votre aide

vincent