Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

IF...and....

13 réponses
Avatar
Jacquouille
Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne =100 ET barbouiller le fond de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value =100 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à c.alors,
je contourne en ajoutant:
If [c]=100 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

10 réponses

1 2
Avatar
JB
Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:
Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le f ond de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.


Avatar
Daniel
Bonsoir.
Sur une ligne :
If [c] = 1 Then c.Value = 100: c.Interior.ColorIndex = 3: End If
Cordialement.
Daniel
"Jacquouille" a écrit dans le message de
news: ek8lJ$
Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors, je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.




Avatar
Jacquouille
OK, merci
Cela fonctionne bien (le contraire eut été anormal...-) )
Tant que nous y sommes, pouvez-vous m'expliquer pourquoi.....cela
fonctionne?
En effet, on pose la condition que si c=1, alors c devient 100.
Puis, on dit que c.interior...=3.
Or, c a la valeur 100 à ce moment, donc la condition n'est plus remplie. Or,
cela fonctionne. Porquè???
Un tout grand merci et bonne fin de soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:
Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.


Avatar
Modeste
Bonsour® Jacquouille avec ferveur ;o))) vous nous disiez :

Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le
fond de cel en rouge.
Je bute sur le AND.
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.


Nul besoin d'un AND qui est un opérateur logique
L'affectation d'un couleur est une instruction comme une autre
en VBA le séparateur d'instruction est " : "
For each c in range("A1:H7")
If c = 1 then c.value 0 : c.interior.colorIndex=3
Next

dans le cas de plusieurs instructions l'utilisation du IF peut s'ecrire de
plusieures façons
IF en ligne
1- pas d'alternative :
IF condition Then Instruction1 : Instriction2 : InstructionX
2- avec alternative :
IF condition Then Instruction1 : Instriction2 : InstructionX ELSE Instruction4 :
InstructionZ

IF structuré
1- pas d'alternative :
IF condition Then
Instruction1
Instruction2
InstructionX
END IF
2- avec alternative :
IF condition Then
Instruction1
Instruction2
InstructionX
ELSE
Instruction4
InstructionZ
END IF

Ou l'on s'apercoit que le modele en ligne bien que plus compact et equivalent
, le modele structuré est plus lisible et plus simple pour la maintenance
;o)))



--
--
@+
;o)))

Avatar
JB
Le test :

If c=1 Then
...
...
End If

est fait UNE seule fois. Il est valable pour toutes les instructions
entre If et End If.

-Si un autre test sur c était fait APRES End If, c'est la valeur 100
qui serait testée.

Remarque: Si on écris le bloc sur une seule ligne, il n'y pas de End
If

If c=1 Then c.value0:c.interior.Colorindex=3

JB


On 12 juil, 20:57, "Jacquouille"
wrote:
OK, merci
Cela fonctionne bien (le contraire eut été anormal...-) )
Tant que nous y sommes, pouvez-vous m'expliquer pourquoi.....cela
fonctionne?
En effet, on pose la condition que si c=1, alors c devient 100.
Puis, on dit que c.interior...=3.
Or, c a la valeur 100 à ce moment, donc la condition n'est plus remplie . Or,
cela fonctionne. Porquè???
Un tout grand merci et bonne fin de soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:



Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : a nd
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
jps
et alors, daniel, pourquoi que t'as mis un End If, précédé de ":", qui plus
est : tu veux nous noyer ou quoi?
jps

"JB" a écrit dans le message de news:

Le test :

If c=1 Then
...
...
End If

est fait UNE seule fois. Il est valable pour toutes les instructions
entre If et End If.

-Si un autre test sur c était fait APRES End If, c'est la valeur 100
qui serait testée.

Remarque: Si on écris le bloc sur une seule ligne, il n'y pas de End
If

If c=1 Then c.value0:c.interior.Colorindex=3

JB


On 12 juil, 20:57, "Jacquouille"
wrote:
OK, merci
Cela fonctionne bien (le contraire eut été anormal...-) )
Tant que nous y sommes, pouvez-vous m'expliquer pourquoi.....cela
fonctionne?
En effet, on pose la condition que si c=1, alors c devient 100.
Puis, on dit que c.interior...=3.
Or, c a la valeur 100 à ce moment, donc la condition n'est plus remplie.
Or,
cela fonctionne. Porquè???
Un tout grand merci et bonne fin de soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:



Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Jacquouille
p'tain, et moi (voire émois) qui essayais de mettre un "AND" parfaitement
inutile.
Grand merci pour ton explication.
Merci et bonne soirée
Jacques

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Le test :

If c=1 Then
...
...
End If

est fait UNE seule fois. Il est valable pour toutes les instructions
entre If et End If.

-Si un autre test sur c était fait APRES End If, c'est la valeur 100
qui serait testée.

Remarque: Si on écris le bloc sur une seule ligne, il n'y pas de End
If

If c=1 Then c.value0:c.interior.Colorindex=3

JB


On 12 juil, 20:57, "Jacquouille"
wrote:
OK, merci
Cela fonctionne bien (le contraire eut été anormal...-) )
Tant que nous y sommes, pouvez-vous m'expliquer pourquoi.....cela
fonctionne?
En effet, on pose la condition que si c=1, alors c devient 100.
Puis, on dit que c.interior...=3.
Or, c a la valeur 100 à ce moment, donc la condition n'est plus remplie.
Or,
cela fonctionne. Porquè???
Un tout grand merci et bonne fin de soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:



Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Jacquouille
B'soir Gilbert
Quand ton épouse me disait que tu étais compliqué, je la comprend
parfaitement. ...-))))))
Fais-lui quand même la bise (et ne de la part de Minou aussi, tant que tu y
es)
Merci pour cette belle syntaxe.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Modeste" a écrit dans le message de news:
%23%
Bonsour® Jacquouille avec ferveur ;o))) vous nous disiez :

Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le
fond de cel en rouge.
Je bute sur le AND.
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.


Nul besoin d'un AND qui est un opérateur logique
L'affectation d'un couleur est une instruction comme une autre
en VBA le séparateur d'instruction est " : "
For each c in range("A1:H7")
If c = 1 then c.value 0 : c.interior.colorIndex=3
Next

dans le cas de plusieurs instructions l'utilisation du IF peut s'ecrire
de plusieures façons
IF en ligne
1- pas d'alternative :
IF condition Then Instruction1 : Instriction2 : InstructionX
2- avec alternative :
IF condition Then Instruction1 : Instriction2 : InstructionX ELSE
Instruction4 : InstructionZ

IF structuré
1- pas d'alternative :
IF condition Then
Instruction1
Instruction2
InstructionX
END IF
2- avec alternative :
IF condition Then
Instruction1
Instruction2
InstructionX
ELSE
Instruction4
InstructionZ
END IF

Ou l'on s'apercoit que le modele en ligne bien que plus compact et
equivalent , le modele structuré est plus lisible et plus simple pour la
maintenance
;o)))



--
--
@+
;o)))





Avatar
Jacquouille
Bonsoir Daniel
Tiens, tu mets une endive (end if prononcé à la Française) en fin de ligne?
Y a-t-il une différence?
Merci d'avoir pris la peine de me répondre.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"Daniel" a écrit dans le message de news:
e4%
Bonsoir.
Sur une ligne :
If [c] = 1 Then c.Value = 100: c.Interior.ColorIndex = 3: End If
Cordialement.
Daniel
"Jacquouille" a écrit dans le message de
news: ek8lJ$
Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le fond
de cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors, je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.








Avatar
Daniel
Ce que c'est de pas tester ! je mets jamais des trucs comme ça dans la vraie
vie :-)))
Daniel
"jps" a écrit dans le message de news:

et alors, daniel, pourquoi que t'as mis un End If, précédé de ":", qui
plus est : tu veux nous noyer ou quoi?
jps

"JB" a écrit dans le message de news:

Le test :

If c=1 Then
...
...
End If

est fait UNE seule fois. Il est valable pour toutes les instructions
entre If et End If.

-Si un autre test sur c était fait APRES End If, c'est la valeur 100
qui serait testée.

Remarque: Si on écris le bloc sur une seule ligne, il n'y pas de End
If

If c=1 Then c.value0:c.interior.Colorindex=3

JB


On 12 juil, 20:57, "Jacquouille"
wrote:
OK, merci
Cela fonctionne bien (le contraire eut été anormal...-) )
Tant que nous y sommes, pouvez-vous m'expliquer pourquoi.....cela
fonctionne?
En effet, on pose la condition que si c=1, alors c devient 100.
Puis, on dit que c.interior...=3.
Or, c a la valeur 100 à ce moment, donc la condition n'est plus remplie.
Or,
cela fonctionne. Porquè???
Un tout grand merci et bonne fin de soirée.

--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.

"JB" a écrit dans le message de news:

Bonsoir,

Sub Zaza()
For Each c In Range("A1:H7")
If [c] = 1 Then
c.Value = 100
c.Interior.ColorIndex = 3
End If
Next
End Sub

JB

On 12 juil, 20:09, "Jacquouille"
wrote:



Bonsoir
J'aimerais que:
Si la valeur de c est = 1 , qu'elle devienne 0 ET barbouiller le
fond
de
cel en rouge.
Je bute sur le AND.
Voici ce que j'ai:
--------------------
Sub Zaza ()
For each c in range("A1:H7")
If [c]=1 then c.value 0 ****C'est ici que j'aimerais ajouter : and
c.interior.colorIndex=3, mais ça va pô. Il me met 0 comme valeur à
c.alors,
je contourne en ajoutant:
If [c]0 then c.interior.colorIndex=3
Next
End sub
-------------
Un grand merci à toute explication qui arrivera.
Bonne soirée à tous et tousses.
--
Bien amicalmement,
Vivement conseillés:
- Un gros marteau
- Un verre de vin d'Alsace....et tout ira mieux.

Jacquouille.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -








1 2