Bonjour
Un filet de macro.....
For each c in range("A1:A100")
If [c]=....then c.range("A1:C1").interior.colorIndex=3
......
---------------------
Dans ce cas, on balaie la plage A1:A100, dans laquelle c devient A1, puis
A2, puis A3 ....
Question:
Comment la machine interprète-t-elle c.range("A1:C1") où le 1 de A1 et C1
semble remplacer le Row(c). Comment cela se passe-t-il?
Pour info, j'ai copié honteusement ce c.range(..) chez le Président AV et
cela fonctionne très bien.
Merci de m'expliquer ce truc car mon neurone a tendance à être en vacance.
Merci et bonne fin de journée
Jacques.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
AV
For each c in range("A1:A100") If [c]=....then c.range("A1:C1").interior.colorIndex=3 Dans ce cas, on balaie la plage A1:A100, dans laquelle c devient A1, puis A2, puis A3 .... Question: Comment la machine interprète-t-elle c.range("A1:C1")
Il s'agit d'une (très intéressante) référence relative qui "équivaut à un décalage" (qui peut-être remplacé, dans certains cas, par la propriété Resize) ! Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative)
Exemples concrets :
Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3
Range("C3").Range("B2:D4").Select ===> Sélection de D4:F6
Etc..... Exercices pratiques : voir au travers d'exemples, comment la logique est respectée
AV
For each c in range("A1:A100")
If [c]=....then c.range("A1:C1").interior.colorIndex=3
Dans ce cas, on balaie la plage A1:A100, dans laquelle c devient A1, puis A2,
puis A3 ....
Question:
Comment la machine interprète-t-elle c.range("A1:C1")
Il s'agit d'une (très intéressante) référence relative qui "équivaut à un
décalage" (qui peut-être remplacé, dans certains cas, par la propriété Resize)
!
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite
quelle que soit la position de c (référence relative)
Exemples concrets :
Range("C3").Range("A1:C1").Select
===> Sélection de C3:E3
Range("C3").Range("B2:D4").Select
===> Sélection de D4:F6
Etc.....
Exercices pratiques : voir au travers d'exemples, comment la logique est
respectée
For each c in range("A1:A100") If [c]=....then c.range("A1:C1").interior.colorIndex=3 Dans ce cas, on balaie la plage A1:A100, dans laquelle c devient A1, puis A2, puis A3 .... Question: Comment la machine interprète-t-elle c.range("A1:C1")
Il s'agit d'une (très intéressante) référence relative qui "équivaut à un décalage" (qui peut-être remplacé, dans certains cas, par la propriété Resize) ! Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative)
Exemples concrets :
Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3
Range("C3").Range("B2:D4").Select ===> Sélection de D4:F6
Etc..... Exercices pratiques : voir au travers d'exemples, comment la logique est respectée
AV
Jacquouille
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP
===> Sélection de D4:F6 Un grand merci
Jacques, élève studieux à 16 heures
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news: >> For
each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à
droite quelle que soit la position de c (référence relative)
<<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont
celle de c comprise?
-------------------------------------------------------------------
Exemples concrets :
Range("C3").Range("A1:C1").Select
===> Sélection de C3:E3
<<<<<<<<< idem de 3 col, donc C3,D3 et E3 ?
--------------------------------------------------------
Range("C3").Range("B2:D4").Select
<<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1
col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta
sélection D4:F6 ???????
Tu peux expliquer, SVP
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP
===> Sélection de D4:F6 Un grand merci
Jacques, élève studieux à 16 heures
JPB
Bonjour Pour expliquer autrement Range("C3").Range("B2:D4").Select Tu fais comme si C3 devenait A1 donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient D4=début de la sélection D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient F6=fin de la sélection
bonne continuation
"Jacquouille" a écrit dans le message de news: e9B$
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP
===> Sélection de D4:F6 Un grand merci
Jacques, élève studieux à 16 heures
Bonjour
Pour expliquer autrement Range("C3").Range("B2:D4").Select
Tu fais comme si C3 devenait A1
donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient
D4=début de la sélection
D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient
F6=fin de la sélection
bonne continuation
"Jacquouille" <NoSpam_j.thiernesse@skynet.be> a écrit dans le message de
news: e9B$PgXxHHA.3784@TK2MSFTNGP02.phx.gbl...
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news: >> For
each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à
droite quelle que soit la position de c (référence relative)
<<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont
celle de c comprise?
-------------------------------------------------------------------
Exemples concrets :
Range("C3").Range("A1:C1").Select
===> Sélection de C3:E3
<<<<<<<<< idem de 3 col, donc C3,D3 et E3 ?
--------------------------------------------------------
Range("C3").Range("B2:D4").Select
<<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1
col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta
sélection D4:F6 ???????
Tu peux expliquer, SVP
Bonjour Pour expliquer autrement Range("C3").Range("B2:D4").Select Tu fais comme si C3 devenait A1 donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient D4=début de la sélection D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient F6=fin de la sélection
bonne continuation
"Jacquouille" a écrit dans le message de news: e9B$
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP
===> Sélection de D4:F6 Un grand merci
Jacques, élève studieux à 16 heures
Jacquouille
Bonjour Il a fallu que je dessine tout cela sur une feuille et mettre les cel en couleur pour comprendre. C'est bien expliqué, mais cela reste de la masturbation cérébrale pour remplacer "décaler". Je crois comprendre le pourquoi de lignes parasites crées avec mon exemple dans lequel on balaie la col a. Merci pour ces "détails". -))
-- Bien amicalmement, Vivement conseillés: - Un gros marteau - Un verre de vin d'Alsace....et tout ira mieux.
Jacquouille.
"JPB" a écrit dans le message de news: 4697f3d9$0$22415$
Bonjour Pour expliquer autrement Range("C3").Range("B2:D4").Select Tu fais comme si C3 devenait A1 donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient D4=début de la sélection D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient F6=fin de la sélection
bonne continuation
"Jacquouille" a écrit dans le message de news: e9B$
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP
===> Sélection de D4:F6 Un grand merci
Jacques, élève studieux à 16 heures
Bonjour
Il a fallu que je dessine tout cela sur une feuille et mettre les cel en
couleur pour comprendre.
C'est bien expliqué, mais cela reste de la masturbation cérébrale pour
remplacer "décaler".
Je crois comprendre le pourquoi de lignes parasites crées avec mon exemple
dans lequel on balaie la col a.
Merci pour ces "détails". -))
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.
Jacquouille.
"JPB" <jeanpaul.briaud@free.fr> a écrit dans le message de news:
4697f3d9$0$22415$426a74cc@news.free.fr...
Bonjour
Pour expliquer autrement Range("C3").Range("B2:D4").Select
Tu fais comme si C3 devenait A1
donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient
D4=début de la sélection
D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient
F6=fin de la sélection
bonne continuation
"Jacquouille" <NoSpam_j.thiernesse@skynet.be> a écrit dans le message de
news: e9B$PgXxHHA.3784@TK2MSFTNGP02.phx.gbl...
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news: >> For
each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à
droite quelle que soit la position de c (référence relative)
<<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont
celle de c comprise?
-------------------------------------------------------------------
Exemples concrets :
Range("C3").Range("A1:C1").Select
===> Sélection de C3:E3
<<<<<<<<< idem de 3 col, donc C3,D3 et E3 ?
--------------------------------------------------------
Range("C3").Range("B2:D4").Select
<<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1
col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta
sélection D4:F6 ???????
Tu peux expliquer, SVP
Bonjour Il a fallu que je dessine tout cela sur une feuille et mettre les cel en couleur pour comprendre. C'est bien expliqué, mais cela reste de la masturbation cérébrale pour remplacer "décaler". Je crois comprendre le pourquoi de lignes parasites crées avec mon exemple dans lequel on balaie la col a. Merci pour ces "détails". -))
-- Bien amicalmement, Vivement conseillés: - Un gros marteau - Un verre de vin d'Alsace....et tout ira mieux.
Jacquouille.
"JPB" a écrit dans le message de news: 4697f3d9$0$22415$
Bonjour Pour expliquer autrement Range("C3").Range("B2:D4").Select Tu fais comme si C3 devenait A1 donc B2 sera décalé de 1 col et 1 ligne par rapport à C3 et devient D4=début de la sélection D4 sera décalé de 3 col et 3 lignes par rapport à C3 et devient F6=fin de la sélection
bonne continuation
"Jacquouille" a écrit dans le message de news: e9B$
"AV" a écrit dans le message de news: >> For each c in range("A1:A100")
Dans cet exemple, la plage concernée sera de c (inclus) à 2 cellules à droite quelle que soit la position de c (référence relative) <<<<< Les 2 cel + c = 3 , sont obtenues par (colA+colB+colC = 3 col dont celle de c comprise? -------------------------------------------------------------------
Exemples concrets : Range("C3").Range("A1:C1").Select ===> Sélection de C3:E3 <<<<<<<<< idem de 3 col, donc C3,D3 et E3 ? --------------------------------------------------------
Range("C3").Range("B2:D4").Select <<<<<<<<<<< Alors ici aussi, 3 col, mais à partir de c3 - 1 ligne et -1 col, jusque c3 + 1 ligne et 3 col ???? Alors, je ne comprends pas ta sélection D4:F6 ??????? Tu peux expliquer, SVP