michel_m à dit:je viens de te fournir la méthode dans le post sur l'impression; donc il sufira d'imbriquer avec la macro ci dessus param^trée au nom du fichier en cours
Sub ImprimerFichiers()
Dim chemin$, feuil$, nomfich$
Application.DisplayAlerts = False
chemin = ThisWorkbook.Path 'chemin d'accès du dossier
feuil = "Feuil1" 'nom de la feuille imprimée
nomfich = Dir(chemin & "\*.xls") '1er fichier du dossier
While nomfich <> ""
If nomfich <> ThisWorkbook.Name Then
Workbooks.Open chemin & "\" & nomfich 'ouvre le [COLOR="Red"][Edit] fichier[/COLOR]
Sheets(feuil).PrintOut 'Imprime feuil
Workbooks(nomfich).Close ' ferme le [COLOR="Red"][Edit] fichier[/COLOR]
End If
nomfich = Dir 'fichier suivant du dossier
Wend
End Sub
Bonjour VBANOVICE, Excel-lent,
De toute façon c'est assez simple si l'on a compris comment récupérer les fichiers d'un dossier (vous devriez le savoir avec le fil précédent) :
Code:Sub ImprimerFichiers() Dim chemin$, feuil$, nomfich$ Application.DisplayAlerts = False chemin = ThisWorkbook.Path 'chemin d'accès du dossier feuil = "Feuil1" 'nom de la feuille imprimée nomfich = Dir(chemin & "\*.xls") '1er fichier du dossier While nomfich <> "" If nomfich <> ThisWorkbook.Name Then Workbooks.Open chemin & "\" & nomfich 'ouvre le [COLOR="Red"][Edit] fichier[/COLOR] Sheets(feuil).PrintOut 'Imprime feuil Workbooks(nomfich).Close ' ferme le [COLOR="Red"][Edit] fichier[/COLOR] End If nomfich = Dir 'fichier suivant du dossier Wend End Sub
A+
J'étais revenu sur XLD car la solidarité envers les contributeurs que l'on prend pour des kleenex-à-jeter semblait s'améliorer...
Ca n'aura été qu'un bref passage...
Adieu
Bonjour VBANOVICE,
Comme dit par Jean-Pierre dans ton précédent fil tu n'es pas banni de ce forum, ni mis dans une liste noir!!!
Ce n'est pas une erreur d'aller sur un autre forum, tu en as parfaitement le droit! Et cela ne t'empêche en rien de venir ici également!
La seule chose qui serait sympa de faire (comme indiqué dans le fameux fil), c'est de mettre un lien vers ta question sur le forum ...(concurrent)...
Pour ton soucis, si tu n'obtiens pas la réponse, c'est tout simplement parce que seul Michel_m peut le faire, or il est peut-être pas là en ce moment et/ou n'a pas vu ta discussion! Essaye par exemple de lui envoyer un message privé, dans lequel tu mettras un lien vers cette discussion et ta discussion précédente
Ah moins d'utiliser la fonction recherche
D'après ce que j'en ai compris, il a déjà mis la macro sur un de tes précédents fil traitant d'impression!
Bonne recherche
bonjour,
Merci de ta réponse, je la teste cet après midi et te tient au courant
@+
Sub ImprimerFichiers()
Dim chemin$, feuil$, nomfich$
Application.DisplayAlerts = False
chemin = ThisWorkbook.Path 'chemin d'accès du dossier
feuil = "Sheets(feuil1).Range(b2)" 'nom de la feuille à imprimer (correspond à un n° de semaine entré dans mon fichier qui commande l'impression, ce n° est le nom de l'onglet à imprimer sur chaque fichier)
nomfich = Dir(chemin & "\*.xls") '1er fichier du dossier
While nomfich <> ""
If nomfich <> ThisWorkbook.Name Then
Workbooks.Open chemin & "\" & nomfich 'ouvre le [Edit] fichier
If Sheets("feuil").Range("m23") <> "" Then
Sheets(feuil).PrintOut 'Imprime feuil
End If
Workbooks(nomfich).Close ' ferme le [Edit] fichier
End If
nomfich = Dir 'fichier suivant du dossier
Wend
End Sub
Sub ImprimerFichiers()
Dim chemin$, nomfich$
Dim nosemaine As String
Application.DisplayAlerts = False
chemin = ThisWorkbook.Path 'chemin d'accès du dossier
nosemaine = Sheets("impr").Range("b2") 'nom de la feuille à imprimer (correspond à un n° de semaine entré dans mon fichier
'qui commande l'impression, ce n° est le nom de l'onglet à imprimer sur chaque fichier)
nomfich = Dir(chemin & "\*.xls") '1er fichier du dossier
While nomfich <> ""
If nomfich <> ThisWorkbook.Name Then
Workbooks.Open chemin & "\" & nomfich 'ouvre le [Edit] fichier
If Sheets(nosemaine).Range("m23") > 0 Then
Sheets(nosemaine).PrintOut 'Imprime feuil
End If
Workbooks(nomfich).Close ' ferme le [Edit] fichier
End If
nomfich = Dir 'fichier suivant du dossier
Wend
End Sub
Ca y est ca fonctionne, voici le code :
Cette macro sert à : imprimer le contenu des onglets qui ont un nom spécifié et une cellule non vide, appartenant à plusieurs fichiers placés dans le même dossier.
Pierre