Une macro Excel pour imprimer tous les classeurs dans un répertoire

Si vous avez besoin d'imprimer à partir de plusieurs classeurs Excel dans un répertoire, vous pouvez utiliser la macro présenté ici pour les imprimer à la fois.

Sommaire

Comment les œuvres macro

Dans cette macro, vous utilisez la fonction Dir pour retourner une chaîne qui représente le nom du fichier qui correspond à ce que vous lui transmettez.

Vous utilisez la fonction Dir pour énumérer tous les fichiers .xlsx dans un répertoire donné, en capturant le nom de chaque fichier. Puis vous ouvrez chaque fichier, l'imprimer, puis fermez.

Sub Macro1 () 'Étape 1: Déclarez votre MyFiles variablesDim tant String'Step 2: spécifier une cible directoryMyFiles = Dir ("C:. Temp * xlsx") Do While MyFiles lt; ">« Étape 3 »: les classeurs ouverts un par oneWorkbooks.Open" C: Temp " MyFilesActiveWorkbook.Sheets ("Sheet1") des copies PrintOut:. = 1ActiveWorkbook.Close SaveChanges: = False'Step 4: Fichier suivant dans les directoryMyFiles = Sous DirLoopEnd



Étape 1 déclare la variable MyFiles String qui permettra de saisir chaque nom de fichier dans l'énumération.

Étape 2 utilise la fonction Dir pour spécifier le répertoire et le type de fichier que vous recherchez. Notez que le code cherche * .xlsx, de sorte que xlsx fichiers seront bouclées. Si vous voulez regarder pour les fichiers .xls, vous aurez besoin de préciser que (avec le répertoire que vous avez besoin de chercher). La macro passe un nom de fichier qu'il trouve à la variable MyFiles String.

Étape 3 ouvre le fichier, puis imprime une copie de la feuille Sheet1. Inutile de dire, vous aurez probablement envie de changer les feuilles à imprimer. Vous pouvez également modifier le nombre de copies à imprimer.

Étape 4 reboucle à trouver plus de fichiers. Si il n'y a pas plus de fichiers, la variable MyFiles est vide et la boucle et la fin macro.

Comment utiliser la macro

Pour mettre en œuvre cette macro, vous pouvez copier et coller dans un module standard:

  1. Activer Visual Basic Editor en appuyant sur Alt + F11.

  2. droit; cliquez sur le nom du projet / classeur dans la fenêtre de projet.

  3. Choisissez Insertion-Module.

  4. Tapez ou collez le code dans le module nouvellement créé, modifier la déclaration d'impression si nécessaire.


» » » » Une macro Excel pour imprimer tous les classeurs dans un répertoire