J'ai beaucoup de classeurs Excel =E0 imprimer avec plusieurs=20
feuilles dans chaque classeur. Y a-t-il moyen d'imprimer=20
par d=E9faut le classeur entier sans passer par toutes les=20
manoeuvres suivantes : ouvrir le fichier,=20
selectionner "ficher, imprimer, classeur entier, ok" ? =20
Merci de votre aide (J'ai 500 fichiers =E0 imprimer !)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Frédéric Sigonneau
Bonsoir,
En supposant que tes 500 classeurs soient stockés au même endroit (Úns le même dossier), tu peux essayer cette procédure après l'avoir recopiée, par exemple, dans un module standard de ton perso.xls et affectée à un bouton de barre d'outils :
Sub ImprimeTouslesClasseurs() Dim FSO, Dossier, Fichier Dim Racine$
'dossier de stockage de tes 500 classeurs (à adapter) Racine = "D:mondossiersousdossier"
If Dir(Racine, vbDirectory) = "" Then MsgBox "Le dossier " & Racine & " n'existe pas" Exit Sub End If
Set FSO = CreateObject("Scripting.FileSystemObject") Set Dossier = FSO.getfolder(Racine) Application.ScreenUpdating = False
For Each Fichier In Dossier.Files If Right(Fichier.Name, 4) = ".xls" Then Workbooks.Open(Fichier.Path).PrintOut Workbooks(Fichier.Name).Close False End If Next
End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs feuilles dans chaque classeur. Y a-t-il moyen d'imprimer par défaut le classeur entier sans passer par toutes les manoeuvres suivantes : ouvrir le fichier, selectionner "ficher, imprimer, classeur entier, ok" ? Merci de votre aide (J'ai 500 fichiers à imprimer !)
Bonsoir,
En supposant que tes 500 classeurs soient stockés au même endroit (Úns le même
dossier), tu peux essayer cette procédure après l'avoir recopiée, par exemple,
dans un module standard de ton perso.xls et affectée à un bouton de barre
d'outils :
Sub ImprimeTouslesClasseurs()
Dim FSO, Dossier, Fichier
Dim Racine$
'dossier de stockage de tes 500 classeurs (à adapter)
Racine = "D:mondossiersousdossier"
If Dir(Racine, vbDirectory) = "" Then
MsgBox "Le dossier " & Racine & " n'existe pas"
Exit Sub
End If
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Dossier = FSO.getfolder(Racine)
Application.ScreenUpdating = False
For Each Fichier In Dossier.Files
If Right(Fichier.Name, 4) = ".xls" Then
Workbooks.Open(Fichier.Path).PrintOut
Workbooks(Fichier.Name).Close False
End If
Next
End Sub
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs
feuilles dans chaque classeur. Y a-t-il moyen d'imprimer
par défaut le classeur entier sans passer par toutes les
manoeuvres suivantes : ouvrir le fichier,
selectionner "ficher, imprimer, classeur entier, ok" ?
Merci de votre aide (J'ai 500 fichiers à imprimer !)
En supposant que tes 500 classeurs soient stockés au même endroit (Úns le même dossier), tu peux essayer cette procédure après l'avoir recopiée, par exemple, dans un module standard de ton perso.xls et affectée à un bouton de barre d'outils :
Sub ImprimeTouslesClasseurs() Dim FSO, Dossier, Fichier Dim Racine$
'dossier de stockage de tes 500 classeurs (à adapter) Racine = "D:mondossiersousdossier"
If Dir(Racine, vbDirectory) = "" Then MsgBox "Le dossier " & Racine & " n'existe pas" Exit Sub End If
Set FSO = CreateObject("Scripting.FileSystemObject") Set Dossier = FSO.getfolder(Racine) Application.ScreenUpdating = False
For Each Fichier In Dossier.Files If Right(Fichier.Name, 4) = ".xls" Then Workbooks.Open(Fichier.Path).PrintOut Workbooks(Fichier.Name).Close False End If Next
End Sub
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs feuilles dans chaque classeur. Y a-t-il moyen d'imprimer par défaut le classeur entier sans passer par toutes les manoeuvres suivantes : ouvrir le fichier, selectionner "ficher, imprimer, classeur entier, ok" ? Merci de votre aide (J'ai 500 fichiers à imprimer !)
FxM
Bonsoir (c'est vieux jeu mais on adore ces mots désuets)
Un exemple de code à adapter et vérifier. La macro qui suit (non testée) est supposer imprimer tous les classeurs *.xls qui se trouvent dans c:temp.
Sub test() Dim F With Application.FileSearch .NewSearch .LookIn = "C:Temp" .Filename = "*.xls" .Execute On Error Resume Next For Each F In .FoundFiles Workbooks.Open F ActiveWorkbook.PrintOut Copies:=1, Collate:=True Windows(F).Close False Next F End With End Sub
@+ FxM
Véronique wrote:
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs feuilles dans chaque classeur. Y a-t-il moyen d'imprimer par défaut le classeur entier sans passer par toutes les manoeuvres suivantes : ouvrir le fichier, selectionner "ficher, imprimer, classeur entier, ok" ? Merci de votre aide (J'ai 500 fichiers à imprimer !)
Bonsoir (c'est vieux jeu mais on adore ces mots désuets)
Un exemple de code à adapter et vérifier.
La macro qui suit (non testée) est supposer imprimer tous les
classeurs *.xls qui se trouvent dans c:temp.
Sub test()
Dim F
With Application.FileSearch
.NewSearch
.LookIn = "C:Temp"
.Filename = "*.xls"
.Execute
On Error Resume Next
For Each F In .FoundFiles
Workbooks.Open F
ActiveWorkbook.PrintOut Copies:=1, Collate:=True
Windows(F).Close False
Next F
End With
End Sub
@+
FxM
Véronique wrote:
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs
feuilles dans chaque classeur. Y a-t-il moyen d'imprimer
par défaut le classeur entier sans passer par toutes les
manoeuvres suivantes : ouvrir le fichier,
selectionner "ficher, imprimer, classeur entier, ok" ?
Merci de votre aide (J'ai 500 fichiers à imprimer !)
Bonsoir (c'est vieux jeu mais on adore ces mots désuets)
Un exemple de code à adapter et vérifier. La macro qui suit (non testée) est supposer imprimer tous les classeurs *.xls qui se trouvent dans c:temp.
Sub test() Dim F With Application.FileSearch .NewSearch .LookIn = "C:Temp" .Filename = "*.xls" .Execute On Error Resume Next For Each F In .FoundFiles Workbooks.Open F ActiveWorkbook.PrintOut Copies:=1, Collate:=True Windows(F).Close False Next F End With End Sub
@+ FxM
Véronique wrote:
J'ai beaucoup de classeurs Excel à imprimer avec plusieurs feuilles dans chaque classeur. Y a-t-il moyen d'imprimer par défaut le classeur entier sans passer par toutes les manoeuvres suivantes : ouvrir le fichier, selectionner "ficher, imprimer, classeur entier, ok" ? Merci de votre aide (J'ai 500 fichiers à imprimer !)