Bonjour à tous,
Je cherche à envoyer en pdf et sauver automatiquement plusieurs fichiers excel d'un folder sous le même nom en pdf (abc.xls, def.xls, ;;; -> abc.pdf, def.pdf, ...). Ces fichiers ont la même structure avec une feuille "rapport" à exporter en pdf.
J'ai trouvé la macro suivante (merci je ne sais plus qui ) mais le temps d'impression en pdf est assez long et ma macro n'attends pas, elle ferme mon fichier excel alors que l'impression n'est pas finie et du coup, ça plante.
J'ai essayé un timer, un application.wait ma ça ne prend pas. Je pense qu'il me faudrait une boucle effectuant la manip suivante : tant que mon fichier en cours d'impression n'est pas sauvé et fermé, ne pas continuer (ie ne pas fermé le fichier excel) mais je ne connais pas encore trop les boucles donc si qq'un peut m'aider ...
Ci joint le code.
Merci d'avance pour vos réponses et bon WE.
Teter
Sub Macro1()
Dim F As Variant
With Application.FileSearch
.NewSearch
.LookIn = "F:\test"
.Execute
On Error Resume Next
For Each F In .FoundFiles
Workbooks.Open F
PDFTPRINT
Next F
End With
End Sub
Sub PDFTPRINT()
Dim Nom As String
Dim C As Byte
Dim CC As Byte
C = Len(ActiveWorkbook.Name)
CC = C - 4
Nom = Left(ActiveWorkbook.Name, CC)
Application.SendKeys Keys:=" F:\test\" & Nom + "~"
Sheets("rapport").PrintOut ActivePrinter:="Adobe PDF sur Ne01:", Collate:=True
'Boucle manquante ???
ActiveWorkbook.Close False
End Sub
Je cherche à envoyer en pdf et sauver automatiquement plusieurs fichiers excel d'un folder sous le même nom en pdf (abc.xls, def.xls, ;;; -> abc.pdf, def.pdf, ...). Ces fichiers ont la même structure avec une feuille "rapport" à exporter en pdf.
J'ai trouvé la macro suivante (merci je ne sais plus qui ) mais le temps d'impression en pdf est assez long et ma macro n'attends pas, elle ferme mon fichier excel alors que l'impression n'est pas finie et du coup, ça plante.
J'ai essayé un timer, un application.wait ma ça ne prend pas. Je pense qu'il me faudrait une boucle effectuant la manip suivante : tant que mon fichier en cours d'impression n'est pas sauvé et fermé, ne pas continuer (ie ne pas fermé le fichier excel) mais je ne connais pas encore trop les boucles donc si qq'un peut m'aider ...
Ci joint le code.
Merci d'avance pour vos réponses et bon WE.
Teter
Sub Macro1()
Dim F As Variant
With Application.FileSearch
.NewSearch
.LookIn = "F:\test"
.Execute
On Error Resume Next
For Each F In .FoundFiles
Workbooks.Open F
PDFTPRINT
Next F
End With
End Sub
Sub PDFTPRINT()
Dim Nom As String
Dim C As Byte
Dim CC As Byte
C = Len(ActiveWorkbook.Name)
CC = C - 4
Nom = Left(ActiveWorkbook.Name, CC)
Application.SendKeys Keys:=" F:\test\" & Nom + "~"
Sheets("rapport").PrintOut ActivePrinter:="Adobe PDF sur Ne01:", Collate:=True
'Boucle manquante ???
ActiveWorkbook.Close False
End Sub