Bonjour,
Pour rendre service à un client, j'avais une petite procédure qui fonctionnait très bien chez lui pour imprimer des documents pdf.
Le code, le voici :
Le client a remplacé son parc de PC qui est maintenant équipé de Windows Vista.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Public Sub ImprimerUnFichierViaShell(Chemin As String) ' Parametre : Chemin = path of file. 'imprimer le fichier dont le chemin est passé en paramètre On Error GoTo errorhandling Debug.Print Chemin ShellExecute hwnd, "print", Chemin, "", "", 1 errorhandling: If err.Number <> 0 Then Call errortabel(err.Number, err.Description) End If End Sub
Depuis ce moment, la procédure ne fonctionne plus pour les fichiers pdf. Avec des .doc, .xls, .txt... etc... ça fonctionne toujours très bien. Mais .pdf... terminé.
Je remarque que sur les machines, est installé un logiciel PDF complete. Et que les fichiers portant l'extension .pdf sont ouverts par défaut avec cette application.
J'en conclus donc, mais peut-être est-ce une conclusion hâtive, que le shellexecute ne "reconnaît" pas cette application. Quelqu'un aurait-il déjà rencontré ce problème et, si oui, comment le résoudre ?
Je pense que la solution la plus "simple" serait d'installer un AdobeReader et d'affecter l'ouverture par défaut des fichiers pdf avec ce programme.
Mais existe-t'il une autre solution en VBA pour forcer l'ouverture via PDF complete, si jamais le client refusait d'installer AdobeReader ?
Merci de vos précieux conseils
Partager