Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 transformer en boucle une macro créer avec l'enregistreur automatique

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

vazvaz

XLDnaute Nouveau
Bonjour,

N'y connaissant pas grand chose aux macros, je viens solliciter votre aide. pour transformer en boucle une macro créer avec l'enregistreur automatique d'excel. ci-dessous le code:
Sub pointage_print()
'
' pointage_print Macro
'

'
Range("U1").Select
ActiveCell.FormulaR1C1 = "1"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "2"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "3"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "4"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "5"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "6"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "7"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "8"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "9"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "10"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "11"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "12"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "13"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "14"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "15"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "16"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "17"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "18"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "19"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "20"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "21"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "22"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "23"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "24"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "25"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "26"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "27"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "28"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "29"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "30"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "31"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "32"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "33"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
Range("U1").Select
ActiveCell.FormulaR1C1 = "34"
Range("U2").Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
ChDir "C:\Users\talbi.othmane\Documents\Pointage"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\talbi.othmane\Documents\Pointage\Pointage_2025_macro.xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
ActiveWindow.SmallScroll Down:=-42
Sheets("Données").Select
ActiveWindow.SmallScroll Down:=-3
Rows("17:17").Select
Selection.Delete Shift:=xlUp
Range("C15:C16").Select
Selection.AutoFill Destination:=Range("C15:C36")
Range("C15:C36").Select
Range("D34").Select
ActiveWindow.SmallScroll Down:=-15
Range("D25").Select
ActiveWindow.SmallScroll Down:=-12
ActiveWorkbook.Save
Sheets("Février").Select
ActiveWindow.SmallScroll Down:=-30
End Sub

Merci d'avance de votre aide
 
Bonjour @vazvaz

Utilise les balises pour mettre ton code car c'est indigeste comme ceci


Tu veux imprimer 34 fois ton fichier (ou une partie) 🤔
J'ai pas vu ton fichier mais à priori près de 200 lignes de codes pour imprimer c'est un peu beaucoup 🤔

Donc mets ton fichier (anonymise le si tu as des données sensibles) et explique en clair ce que tu veux faire
Exemple :
Quand j'ai ceci je veux faire cela et ou tu veux avoir le résultat
Imprimer telle ou telle zone
Effacer ceci si j'ai ça ou ça
etc.....
 
Dernière édition:
Bonjour Vazvaz, et bienvenu sur XLD,
Une première approche avec :
VB:
Sub pointage_print()
Dim X As Integer
For X = 1 To 34
    Range("U1") = X
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
    IgnorePrintAreas:=False
Next X
ChDir "C:\Users\talbi.othmane\Documents\Pointage"
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\talbi.othmane\Documents\Pointage\Pointage_2025_macro.xlsm", _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
Sheets("Données").Select
Rows("17:17").Delete Shift:=xlUp
Range("C15:C16").AutoFill Destination:=Range("C15:C36")
ActiveWorkbook.Save
Sheets("Février").Select
End Sub
A tester pour voir 🙂
 
Merci, le résultat est satisfaisant.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
739
Réponses
22
Affichages
3 K
Réponses
1
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…