Re : Initialisation données sur une feuille
Re,
Que te dire, sinon ce que j'ai déjà dit :
En début de macro, juste après le Sub :
Application.ScreenUpdating = False
ensuite :
Range("A4:A28,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M 4:M28").Select
Range("M4").Activate
Range( _
"A4:A28,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28, O4:O28,Q4:Q28,S4:S28,U4:U28,W4:W28,Y4:Y28" _
).Select
Range("Y4").Activate
Range( _
"A4:A28,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28, O4:O28,Q4:Q28,S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28 ,AC4:AC28,AE4:AE28,AG4:AG28,AI4:AI28,AK4:AK28" _
).Select
Range("AK4").Activate
Range( _
"A4:A28,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28, O4:O28,Q4:Q28,S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28 ,AC4:AC28,AE4:AE28,AG4:AG28,AI4:AI28,AK4:AK28,AM4: AM28,AO4:AO28,AQ4:AQ28,AS4:AS28,AU4:AU28,AW4:AW28" _
).Select
Range("AW4").Activate
Range( _
"A4:A28,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28, O4:O28,Q4:Q28,S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28 ,AC4:AC28,AE4:AE28,AG4:AG28,AI4:AI28,AK4:AK28,AM4: AM28,AO4:AO28,AQ4:AQ28,AS4:AS28,AU4:AU28,AW4:AW28, AY4:AY28,BA4:BA28,BC4:BC28,BE4:BE28,BG4:BG28,BI4:B I28" _
).Select
Range("BI4").Activate
Union(Range( _
"BM4:BM28,BO4:BO28,BQ4:BQ28,BS4:BS28,A4:A28,C4:C28 ,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28,O4:O28,Q4:Q28, S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28,AC4:AC28,AE4: AE28,AG4:AG28,AI4:AI28,AK4:AK28,AM4:AM28,AO4:AO28, AQ4:AQ28,AS4:AS28,AU4:AU28,AW4:AW28,AY4:AY28,BA4:B A28" _
), Range("BE4:BE28,BG4:BG28,BI4:BI28,BK4:BK28")).Sele ct
Range("BS4").Activate
Union(Range( _
"BM4:BM28,BO4:BO28,BQ4:BQ28,BS4:BS28,BU4:BU28,BW4: BW28,BY4:BY28,CA4:CA28,CC4:CC28,CE4:CE28,A4:A28,C4 :C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28,O4:O28,Q4: Q28,S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28,AC4:AC28, AE4:AE28,AG4:AG28,AI4:AI28,AK4:AK28,AM4:AM28,AO4:A O28" _
), Range( _
"AS4:AS28,AU4:AU28,AW4:AW28,AY4:AY28,BA4:BA28,BC4: BC28,BE4:BE28,BG4:BG28,BI4:BI28,BK4:BK28" _
)).Select
Range("CE4").Activate
Union(Range( _
"BM4:BM28,BO4:BO28,BQ4:BQ28,BS4:BS28,BU4:BU28,BW4: BW28,BY4:BY28,CA4:CA28,CC4:CC28,CE4:CE28,CG4:CG28, CI4:CI28,CK4:CK28,CM4:CM28,CO4:CO28,CQ4:CQ28,A4:A2 8,C4:C28,E4:E28,G4:G28,I4:I28,K4:K28,M4:M28,O4:O28 ,Q4:Q28,S4:S28,U4:U28,W4:W28,Y4:Y28,AA4:AA28,AC4:A C28" _
), Range( _
"AG4:AG28,AI4:AI28,AK4:AK28,AM4:AM28,AO4:AO28,AQ4: AQ28,AS4:AS28,AU4:AU28,AW4:AW28,AY4:AY28,BA4:BA28, BC4:BC28,BE4:BE28,BG4:BG28,BI4:BI28,BK4:BK28" _
)).Select
Range("CQ4").Activate
Union(Range( _
"BM4:BM28,BO4:BO28,BQ4:BQ28,BS4:BS28,BU4:BU28,BW4: BW28,BY4:BY28,CA4:CA28,CC4:CC28,CE4:CE28,CG4:CG28, CI4:CI28,CK4:CK28,CM4:CM28,CO4:CO28,CQ4:CQ28,CS4:C S28,CU4:CU28,CW4:CW28,CY4:CY28,A4:A28,C4:C28,E4:E2 8,G4:G28,I4:I28,K4:K28,M4:M28,O4:O28,Q4:Q28,S4:S28 " _
), Range( _
"Y4:Y28,AA4:AA28,AC4:AC28,AE4:AE28,AG4:AG28,AI4:AI 28,AK4:AK28,AM4:AM28,AO4:AO28,AQ4:AQ28,AS4:AS28,AU 4:AU28,AW4:AW28,AY4:AY28,BA4:BA28,BC4:BC28,BE4:BE2 8,BG4:BG28,BI4:BI28,BK4:BK28" _
)).Select
Range("CY4").Activate
Selection.ClearContents
Range("A2:B2").Select
Application.ScreenUpdating = True
End Sub
De plus, tu as des instructions qui reviennent plusieurs fois (selections de colonnes déjà traitées).
Une autre solution consisterait à utiliser un code du genre :
Sub vider()
Columns("A:BQ").Select
Selection.SpecialCells(xlCellTypeConstants, 23).Select
Selection.ClearContents
End Sub
Après avoir mis tout tes titres et autres libellés sous la forme (texte ou numérique):
="mon titre", ou ="mon libellé"
Ainsi, seules les valeurs saisies seraient mises à blanc.
Sinon, redépose un fichier (zippé) pour aller plus loin.
Bon dimanche.
Jean-Pierre