Bonsoir à vous tous.
Je suis nouveau sur le forum ainsi que sur la création de macro VBA.
Dans le cadre de mon travail, je travaille sur un fichier Excel avec quelques macros. Hors il en manque une qui pourrais nous simplifier la vie.
A la fin de notre traitement des demandes, nous avons besoin d'imprimer des fiches d'identification, à ce jour, la macro VBA permet de les faire mais une par une. Nous avons donc eu l'idée de faire une macro pour les imprimer toutes les unes après les autres. J'ai réussis à faire un code qui fonctionne. Mon seul soucis c'est que lors du lancement des impressions, notre tableau est filtré et mon code ne tiens absolument pas compte de ce filtre et imprime toutes les lignes, y compris celle qui ne sont pas affichées.
Pouvez-vous m'aider à résoudre ce soucis s'il vous plaît?
Je vous passe mon code:
Sub IDENT_APPRO_ALL()
debut:
Cells(ActiveCell.Row, 7).Select 'Sélectionne la cellule "ID Barecode" de la ligne active
If Cells(ActiveCell.Row, 7).Value = "" Then GoTo fin 'Si la valeur de la cellule est vide alors aller à "fin"
If Cells(ActiveCell.Row, 7).Value = Cells(ActiveCell.Row + 1, 7) Then GoTo suite 'Si la valeur de cette cellule est égale à celle de la cellule du dessous alors aller à "suite"
Call IDENT_APPRO 'lance la macro d'impression des fiches appro (IDENT_APPRO)
Application.Wait Now + TimeValue("0:00:02") 'Temporisation de 2 secondes
suite:
Cells(ActiveCell.Row + 1, 7).Select 'Sélectionne la cellule du dessous de la colonne "ID Barecode"
GoTo debut 'Aller à "debut"
fin:
MsgBox ("Impression terminée.")
End Sub