Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner des
cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est possible
de faire quelque chose du genre for k=1 to 10 step 2 ... Malheureusement, je
n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102" _
)).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
Merci
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta
proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173"
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à
sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules
; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs
tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?
Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta
proposition ?
Merci
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173"
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à
sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules
; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs
tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta
proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173"
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à
sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules
; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs
tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?
Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
Merci
Bonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?
Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Alors, je propose une procédure qui travaille sur une plage de cellules
à la fois. Cette plage ne doit pas contenir des cellules non contiguës.
Sub MaMacro()
AlternerCellulesPlages Range("AJ93:AJ130")
AlternerCellulesPlages Range("AJ133:AJ173")
AlternerCellulesPlages Range("AN94:AN130")
...
End Sub
Sub AlternerCellulesPlages(Plage As Range)
Dim i As Long
For i = 1 To Plage.Cells.Count Step 2
Plage.Cells(i).font.colorindex = 2
Next i
End Sub
Ok?Merci pour ta réponse,
J'ai oublié une précision capitale : dans chaque plage concernée, on
sélectionne une cellule sur deux.
Ce que tu me propose me va très bien, sauf que je vais devoir écrire les
1040 cellules !
comment donc ajouter la notion d'une cellule sur deux dans ta proposition ?
MerciBonjour
Il faut savoir que, en VBA, pour sélectionner deux plages de cellules,
on doit remplacer le ; par une ,
Dès lors, tu peux utiliser
Range("AJ93:AJ130,AJ133:AJ173,AN94:AN130,AN134:AN173,AT94:AT130,AT134:AT173").Font.ColorIndex
= 2
La ligne commence à Range... et se termine après =2
Ainsi, tu n'as même pas besoin de sélectionner les cellules avant, et
c'est plus transparent pour l'utilisateur
Ok?Bonjour à tous,
J'ai enregistrée une macro (voir ci-dessous) qui consiste à sélectionner
des cellules pour ensuite les mettre en blanc.
Comment est-il possible de "l'épurer" ou de la simplifier ?
Je m'explique : la macro enregistrée ne reprend que quelques cellules ; or,
je dois sélectionner 1040 cellules au total. Je pense donc qu'il est
possible de faire quelque chose du genre for k=1 to 10 step 2 ...
Malheureusement, je n'y arrive toujours pas après plusieurs tentatives.
Si vous pouvez répondre à ma demande, les plages concernées sont :
AJ93:AJ130;AJ133:AJ173
AN94:AN130;AN134:AN173
AT94:AT130;AT134:AT173
La macro enregistrée est la suivante :
Sub cachertarifs()
' Macro enregistrée le 24/08/2007 par nico
Union(Range( _
"AZ104,AZ106,AZ108,AZ110,BF94,BF96,BF98,BF100,BF102,BF104,BF106,BF108,BF110,AJ93,AJ95,AJ97,AJ999,AJ101,AJ103,AJ105,AJ107,AJ109"
_ ), Range( _
"AT96,AT98,AT100,AT102,AT104,AT106,AT108,AT110,AZ94,AZ96,AZ98,AZ100,AZ102"
_ )).Select
Range("BF110").Activate
Selection.Font.ColorIndex = 2
End Sub
D'avance je vous remercie pour votre aide,
Bonne jouréne à tous,
Nicoh
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
--
Pierre Fauconnier
Il n'y a jamais eu un moment dans votre vie qui ne se passait pas
"maintenant" et il n'y en aura jamais (Eckart Toll in "Le pouvoir du
moment présent")
Bonjour,
Il est fort le Pierre, que l'on voyait plus souvent auparavant.
Guy
Bonjour,
Il est fort le Pierre, que l'on voyait plus souvent auparavant.
Guy
Bonjour,
Il est fort le Pierre, que l'on voyait plus souvent auparavant.
Guy