Bonjour,

j'ai fait un code, qui à l'air de fonctionner... en tout cas pas de message d'erreur, sauf que... cette partie ne fonctionne pas...

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
 
MsgBox Me.surbrillance
 
  FileCopy "C:\Users\Ecodream10\Desktop\Programme\Gestion globale\" & infopesee & ".PDF", chemin_dossier3 & "\" & nomcoller & ".pdf"
 
Do While Me.CurrentRecord < Me.Recordset.RecordCount
If Me.CurrentRecord < Me.Recordset.RecordCount Then
    DoCmd.GoToRecord , , acNext
 
MsgBox Me.surbrillance
  FileCopy "C:\Users\Ecodream10\Desktop\Programme\Gestion globale\" & infopesee & ".PDF", chemin_dossier3 & "\" & nomcoller & ".pdf"
 
Else
    DoCmd.RunCommand acCmdSaveRecord
End If
Loop
je m'explique, il me lit bien ma msgbox, mais ne copie pas le fichier PDF, à part le premier avant le "Do While", est ce que vous auriez une explication?? une solution éventuellement....

je vous met le code en entier en espérant que quelqu'un pourra me donner une idee,


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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Private Sub enregistrePDF()
'*********
'création du fichier si inexistant
DoCmd.Requery
'creation d'un dossier pour la commande
Dim infoClient As String
Dim infoProduit As String
Dim infoDate As String
Dim infoAna As String
Dim infotype As String
 
infoDate = Me.DteAn
 
If IsNull(Me.txtana) Then
    If Me.Texte278 = "E" Then
    infotype = "801.000 - Versage"
    Else
    infotype = "701.000 - Enlevement"
    End If
infoClient = "Ecodream" & " - " & Me.Client
infoProduit = Me.Client & " - " & Me.TxtProduit
Else
infoAna = Me.txtana
infoClient = Me.Client
infoProduit = Me.TxtProduit
End If
infopesee = "pesee" & Me.surbrillance
nomcoller = Me.surbrillance
 
 
'creation d'un dossier pour la commande
Dim chemin_dossier1 As String
Dim chemin_dossier2 As String
Dim chemin_dossier3 As String
 
Dim chemin As String
chemin = "C:\Users\Ecodream10\Desktop\Programme\Gestion globale\"  'Form_F_Menu.CheminFichier ' chemin vers le dossier à créer"
 
'dossier
chemin_dossier1 = chemin & infoAna & " - " & infoClient
chemin_dossier2 = chemin_dossier1 & "\" & infoDate
chemin_dossier3 = chemin_dossier2 & "\" & infoProduit
'verifie la chemin
If Dir(chemin_dossier1, vbDirectory) <> vbNullString Then
Else
'dossier existe pas
    MkDir (chemin_dossier1)
 
End If
 
If Dir(chemin_dossier2, vbDirectory) <> vbNullString Then
Else
'dossier existe pas
    MkDir (chemin_dossier2)
 
End If
 
If Dir(chemin_dossier3, vbDirectory) <> vbNullString Then
 
'dossier existe
 
Else
'dossier existe pas
    MkDir (chemin_dossier3)
 
End If
 
'******************
'transfere des bons de pesee
'1ere valleur du formulaire
MsgBox Me.surbrillance
 
  FileCopy "C:\Users\Ecodream10\Desktop\Programme\Gestion globale\" & infopesee & ".PDF", chemin_dossier3 & "\" & nomcoller & ".pdf"
 
Do While Me.CurrentRecord < Me.Recordset.RecordCount
If Me.CurrentRecord < Me.Recordset.RecordCount Then
    DoCmd.GoToRecord , , acNext
 
MsgBox Me.surbrillance
  FileCopy "C:\Users\Ecodream10\Desktop\Programme\Gestion globale\" & infopesee & ".PDF", chemin_dossier3 & "\" & nomcoller & ".pdf"
 
Else
    DoCmd.RunCommand acCmdSaveRecord
End If
Loop
 
'ouvrir et sauvegarder le document
 
DoCmd.OpenReport "E_Relever", acViewPreview  ' ouvrir le formulaire suivant le n°commande
DoCmd.OutputTo acOutputReport, "E_Relever", acFormatPDF, chemin_dossier3 & "\" & infoProduit & ".pdf"
 
End Sub
un tout grand merci,