XL 2010 erreur execution 1004

vinceda

XLDnaute Junior
Bonjour à tous,

encore un problème insoluble pour mes maigres compétences en excel:

j'ai une macro qui me permet d'éditer des étiquettes.
le fonctionnement est simple, dès que la case de date est >0 alors cela imprime.
ma macro ressemble donc à ça avec l'indication de la cellule qui doit être supérieure à 0sur la ligne For each cel in.range

Sub Etiquetage()
Dim Pge As Integer
With Sheets("Feuil5")
Pge = 1
For Each cel In .Range("A1,A33,A65,A97,A129,A161,A193,A225,A257,A289,A321,A353,A385,A417,A449,A481,A513,A545,A577,A609,A641,A673,A705,A737,A769,A801,A833,A865,A897,A929,A961,A993,A1025,A1057,A1089,A1121,A1153,A1185,A1217,A1249,A1281,A1313,A1345,A1377,A1409,A1441,A1473,A1505,A1537,A1569")
If cel.Value > 0 Then Sheets("Feuil5").PrintOut From:=Pge, To:=Pge, Copies:=1, Collate:=True
Pge = Pge + 1
Next
End With
End Sub

Savez vous pourquoi elle ne veut pas s'effectuer ?

merci d'avance
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir,
J'ai tronquer la plage en deux, ça à l'air d'aller mieux
VB:
With Sheets("Feuil1")
Set plage1 = ActiveSheet.Range("A1,A33,A65,A97,A129,A161,A193,A225,A257,A289,A321,A353,A385,A417,A449,A481,A513,A545,A577,A609,A641,A673,A705,A737,A769")
Set plage2 = ActiveSheet.Range("A801,A833,A865,A897,A929,A961,A993,A1025,A1057,A1089,A1121,A1153,A1185,A1217,A1249,A1281,A1313,A1345,A1377,A1409,A1441,A1473,A1505") ',A1537,A1569")
Set plage = Union(plage1, plage2)
Pge = 1
For Each cel In plage
....
 

youky(BJ)

XLDnaute Barbatruc
Bonjour tous,
Je remarque que cela s'incrémente de +32 chaque fois
Donc facile mais attention au papier ici cela imprime si la cellule>0 sur chaque cells
Code:
Sub impr()
With Feuil5
For k = 1 To 1569 Step 32
If .Cells(k, 1) > 0 Then Feuil5.PrintOut
Next
End With
End Sub
Bruno
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 107
Membres
103 120
dernier inscrit
83400ren