Bonsoir,
Dans l'exemple ci-dessous, j'ouvre des fichiers (.doc et .xls), dans un folder précis,
pour les imprimer (un par un).
Je ne sais pas s'il y a possibilité d'imprimer un file sans l'ouvrir.
Dim Fso, path, fichier, fichiers, WshShell
path = "E:\Affaires\EUROFACTOR - AP02N008\4.3 Formulaires\Formulaires spécifiques\"
Set WshShell = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
Set dossier = fso.GetFolder(path)
Set fichiers = Dossier.Files
For Each fichier in fichiers
'MsgBox "shortPath=" & fichier.ShortPath & vbCrLf & "Path=" & fichier.Path
'MsgBox "shortName=" & fichier.ShortName & vbCrLf & "Name=" & fichier.Name
If Left(fichier.name,19) = "Main courante Ifdex" Then
WshShell.Run fichier.ShortPath
WScript.Sleep(3000)
WshShell.SendKeys "^p"
WScript.Sleep(2000)
WshShell.SendKeys "{ENTER}" 'imprimer => ok
WScript.Sleep(3000)
WshShell.SendKeys "%(fq)" 'fermeture du document
WScript.Sleep(3000)
End If
If Right(fichier.name,23) = "WEEK-END EUROFACTOR.xls" Then
If jour2 = "Vendredi" Then
WshShell.Run fichier.ShortPath
WScript.Sleep(3000)
WshShell.SendKeys "^p"
WScript.Sleep(2000)
WshShell.SendKeys "{ENTER}" 'imprimer => ok
WScript.Sleep(3000)
WshShell.SendKeys "%(fq)" 'fermeture du document
WScript.Sleep(3000)
End If
Next
Set fso = Nothing
Set WshShell = Nothing