Principe :
- L’enregistreur de Macros permet facilement de générer un script qui ouvre un fichier,
- Mais il n’existe aucune commande ni aucune boite de dialogue qui permette d’ouvrir un dossier,
- Il faut donc passer par la programmation VBA
VBA en 2 étapes :
- Cela nécessite quelques connaissances en programmation, mais Visual Basic n’est pas un langage très compliqué
– Étape 1 : “Declare”
- Déclarer la fonction ShellExecute
- La section “déclaration” est tout en haut du module VBA (outils/macro/…/modifier)
- Recopier ce code :
Declare Function ShellExecute Lib "shell32.dll" Alias _ "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation _ As String, ByVal lpFile As String, ByVal lpParameters _ As String, ByVal lpDirectory As String, ByVal nShowCmd _ As Long) As Long
– Étape 2 : “Sub”
- Écriture de la procédure
- Il suffit de passer à Shell Execute le chemin du dossier à ouvrir avec l’argument OPEN
- J’ai volontairement créé un dossier _PDF dans le dossier de courriers de MédyCS (pieces)
- Une procedure est toujours balisée par
- une instruction d’ouverture : Sub
- une instruction de fermeture : End Sub
Sub PDF_DossierOuvre() ShellExecute 0, "open", "C:\medycs\Pieces\_PDF\", 0, 0, 1 End Sub
- La fonction s’appelle donc “PDF_DossierOuvre” (le nom n’a pas d’importance)
- Pour appeler cette fonction à partir de n’importe quelle macro il suffit de taper son NOM,
Sub PDF_Imprimer
‘ J’imprime le PDF …
‘ J’OUVRE le dossier
DossierOuvre
End Sub
Lancer la fonction :
- Pour ouvrir le dossier des PDF avec un raccourci clavier, il suffit d’affecter une série de touches à la macro :
- AFFICHAGE
- Sélectionner Macros
- PDF_DossierOuvre
- Simuler la série de touches
- Valider
- Il me suffit maintenant de taper MAJ+CTRL+O pour ouvrir directement à partir de WORD le dossier des PDF
Çà sert à quoi ?
- Dans le projet “drag and Mail”,
- Il me suffit maintenant de déposer l’ordonnance sur ma messagerie pour l’envoyer à un patient ….