J'ai une procédure existante qui utilise un Select Case, et qui est
déclenchée par un évènement Worksheet Change. Elle fonctionne très bien.
Cependant, je voudrais maintenant que les cas possibles répondent à une
combinaison de 2 conditions. J'ai de la difficulté avec le script de la
procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla
Dim c As Range
For Each c In Range("C26:C30")
Select Case c
Case "toto1"
Rows(c.Row).Interior.ColorIndex = 0
Case Else
Rows(c.Row).Interior.ColorIndex = 48
End Select
End Sub
Comment faire pour y coupler une seconde condition, disons pour la même
plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la
valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans
succès).
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
Bonsoir,
Pour spécifier la plage, je pense (non vérifié ! ) que
Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute :
que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" <StphanDuQubec@discussions.microsoft.com> a écrit dans le
message de news: 09B15E10-7541-4760-8E62-4074F2993570@microsoft.com...
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est
déclenchée par un évènement Worksheet Change. Elle fonctionne très bien.
Cependant, je voudrais maintenant que les cas possibles répondent à une
combinaison de 2 conditions. J'ai de la difficulté avec le script de la
procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla
Dim c As Range
For Each c In Range("C26:C30")
Select Case c
Case "toto1"
Rows(c.Row).Interior.ColorIndex = 0
Case Else
Rows(c.Row).Interior.ColorIndex = 48
End Select
End Sub
Comment faire pour y coupler une seconde condition, disons pour la même
plage de la colonne E (26 à 30) ? Admettons que la condition doit être que
la
valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans
succès).
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
Stéphan DuQuébec
C'est justement la condition spécifique que je désire rencontrer........
C'est le Row Color Indez qui se doit d'embarquer.....
Je valide et reviens confirmer.
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
C'est justement la condition spécifique que je désire rencontrer........
C'est le Row Color Indez qui se doit d'embarquer.....
Je valide et reviens confirmer.
Bonsoir,
Pour spécifier la plage, je pense (non vérifié ! ) que
Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute :
que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" <StphanDuQubec@discussions.microsoft.com> a écrit dans le
message de news: 09B15E10-7541-4760-8E62-4074F2993570@microsoft.com...
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est
déclenchée par un évènement Worksheet Change. Elle fonctionne très bien.
Cependant, je voudrais maintenant que les cas possibles répondent à une
combinaison de 2 conditions. J'ai de la difficulté avec le script de la
procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla
Dim c As Range
For Each c In Range("C26:C30")
Select Case c
Case "toto1"
Rows(c.Row).Interior.ColorIndex = 0
Case Else
Rows(c.Row).Interior.ColorIndex = 48
End Select
End Sub
Comment faire pour y coupler une seconde condition, disons pour la même
plage de la colonne E (26 à 30) ? Admettons que la condition doit être que
la
valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans
succès).
C'est justement la condition spécifique que je désire rencontrer........
C'est le Row Color Indez qui se doit d'embarquer.....
Je valide et reviens confirmer.
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
Stéphan DuQuébec
La méthode du Range semble être la bonne (sans message d'erreur).
Mais la combinaison des 2 conditions dans la description du Case me fait encore défaut:
....... Select Case c Case "toto1", "toto2" Rows(c.Row).Interior.ColorIndex = 48 ........
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
La méthode du Range semble être la bonne (sans message d'erreur).
Mais la combinaison des 2 conditions dans la description du Case me fait
encore défaut:
.......
Select Case c
Case "toto1", "toto2"
Rows(c.Row).Interior.ColorIndex = 48
........
Bonsoir,
Pour spécifier la plage, je pense (non vérifié ! ) que
Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute :
que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" <StphanDuQubec@discussions.microsoft.com> a écrit dans le
message de news: 09B15E10-7541-4760-8E62-4074F2993570@microsoft.com...
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est
déclenchée par un évènement Worksheet Change. Elle fonctionne très bien.
Cependant, je voudrais maintenant que les cas possibles répondent à une
combinaison de 2 conditions. J'ai de la difficulté avec le script de la
procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla
Dim c As Range
For Each c In Range("C26:C30")
Select Case c
Case "toto1"
Rows(c.Row).Interior.ColorIndex = 0
Case Else
Rows(c.Row).Interior.ColorIndex = 48
End Select
End Sub
Comment faire pour y coupler une seconde condition, disons pour la même
plage de la colonne E (26 à 30) ? Admettons que la condition doit être que
la
valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans
succès).
La méthode du Range semble être la bonne (sans message d'erreur).
Mais la combinaison des 2 conditions dans la description du Case me fait encore défaut:
....... Select Case c Case "toto1", "toto2" Rows(c.Row).Interior.ColorIndex = 48 ........
Bonsoir, Pour spécifier la plage, je pense (non vérifié ! ) que Range("C26:C30","E26:E30") doit convenir.
Par contre j'ai un doute : que se passe-t-i si il y a toto1 en c26 et toto2 en E26 ?
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"Stéphan DuQuébec" a écrit dans le message de news:
Bien le bonjour à toutes & tous,
J'ai une procédure existante qui utilise un Select Case, et qui est déclenchée par un évènement Worksheet Change. Elle fonctionne très bien. Cependant, je voudrais maintenant que les cas possibles répondent à une combinaison de 2 conditions. J'ai de la difficulté avec le script de la procédure à adopter.
Exemple de ma procédure actuelle:
Private sub_Work...change...blablabla Dim c As Range For Each c In Range("C26:C30") Select Case c Case "toto1" Rows(c.Row).Interior.ColorIndex = 0 Case Else Rows(c.Row).Interior.ColorIndex = 48 End Select End Sub
Comment faire pour y coupler une seconde condition, disons pour la même plage de la colonne E (26 à 30) ? Admettons que la condition doit être que la valeur de la cellule de la colonne E doit être = à "toto2".
Où spécifier mon Range E26 à E30 ?
Comment y inscrire ma seconde condition (j'ai tenté avec un AND mais sans succès).
Merci pour votre aide éventuelle.
AV
répondent à une combinaison de 2 conditions.
For Each c In Range("C26:C30") if c="toto1" and c="toto2" then Rows(c.Row).Interior.ColorIndex = 0 Else Rows(c.Row).Interior.ColorIndex = 48 End if End Sub
AV
répondent à une combinaison de 2 conditions.
For Each c In Range("C26:C30")
if c="toto1" and c="toto2" then
Rows(c.Row).Interior.ColorIndex = 0
Else
Rows(c.Row).Interior.ColorIndex = 48
End if
End Sub
For Each c In Range("C26:C30") if c="toto1" and c="toto2" then Rows(c.Row).Interior.ColorIndex = 0 Else Rows(c.Row).Interior.ColorIndex = 48 End if End Sub
AV
Pounet95
Bonjour Alain, Je ne comprends pas : comment peut-on être à la fois 0 et 1 ? 'c' est bien le contenu de la cellule et il ne peut donc pas avoir 2 valeurs en même temps !!
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"AV" a écrit dans le message de news:
répondent à une combinaison de 2 conditions.
For Each c In Range("C26:C30") if c="toto1" and c="toto2" then Rows(c.Row).Interior.ColorIndex = 0 Else Rows(c.Row).Interior.ColorIndex = 48 End if End Sub
AV
Bonjour Alain,
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
'c' est bien le contenu de la cellule et il ne peut donc pas avoir 2 valeurs
en même temps !!
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
Osk5Uhb4EHA.3376@TK2MSFTNGP12.phx.gbl...
répondent à une combinaison de 2 conditions.
For Each c In Range("C26:C30")
if c="toto1" and c="toto2" then
Rows(c.Row).Interior.ColorIndex = 0
Else
Rows(c.Row).Interior.ColorIndex = 48
End if
End Sub
Bonjour Alain, Je ne comprends pas : comment peut-on être à la fois 0 et 1 ? 'c' est bien le contenu de la cellule et il ne peut donc pas avoir 2 valeurs en même temps !!
-- Pounet95 on trouve tout ( ou presque ) http://www.excelabo.net/
"AV" a écrit dans le message de news:
répondent à une combinaison de 2 conditions.
For Each c In Range("C26:C30") if c="toto1" and c="toto2" then Rows(c.Row).Interior.ColorIndex = 0 Else Rows(c.Row).Interior.ColorIndex = 48 End if End Sub
AV
AV
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" ! M'est avis que se serait plutôt un "Or" mais bon...
AV
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" !
M'est avis que se serait plutôt un "Or" mais bon...
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" ! M'est avis que se serait plutôt un "Or" mais bon...
AV
Stéphan DuQuébec
Bonjour AV, le "Il", c'est moi ça.....
Ma question n'était peut-être pas claire mais ce que je désire faire, et ce avec quoi j'ai de la difficulté, c'est de poser un SECONDE condition de façon simultanée.
Non pas que ma valeur C soit "toto1" OU "toto2" dans le Range "C26:C30".
Mais bien que la valeur "toto1" soit présente dans le Range "C26:C30" en même temps que la valeur "toto2" le soit dans le Range "E26:E30".
Et c'est là que le srcipt de ma valeur me fait défaut.....
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" ! M'est avis que se serait plutôt un "Or" mais bon...
AV
Bonjour AV, le "Il", c'est moi ça.....
Ma question n'était peut-être pas claire mais ce que je désire faire, et ce
avec quoi j'ai de la difficulté, c'est de poser un SECONDE condition de façon
simultanée.
Non pas que ma valeur C soit "toto1" OU "toto2" dans le Range "C26:C30".
Mais bien que la valeur "toto1" soit présente dans le Range "C26:C30" en
même temps que la valeur "toto2" le soit dans le Range "E26:E30".
Et c'est là que le srcipt de ma valeur me fait défaut.....
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" !
M'est avis que se serait plutôt un "Or" mais bon...
Ma question n'était peut-être pas claire mais ce que je désire faire, et ce avec quoi j'ai de la difficulté, c'est de poser un SECONDE condition de façon simultanée.
Non pas que ma valeur C soit "toto1" OU "toto2" dans le Range "C26:C30".
Mais bien que la valeur "toto1" soit présente dans le Range "C26:C30" en même temps que la valeur "toto2" le soit dans le Range "E26:E30".
Et c'est là que le srcipt de ma valeur me fait défaut.....
Je ne comprends pas : comment peut-on être à la fois 0 et 1 ?
Tu as tout a fait raison de t'ébaubir !
Il voulait un "And", j'ai mis un "And" ! M'est avis que se serait plutôt un "Or" mais bon...
AV
AV
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30" Else: MsgBox "blabla" End If
AV
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then
MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30"
Else: MsgBox "blabla"
End If
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30" Else: MsgBox "blabla" End If
AV
Stéphan DuQuébec
Merci !
J'avais cru cette ficelle trop ancienne pour que vous y reveniez....j'avais pris la liberté de réaborder le tout dans une nouvelle aujourd'hui.
Bonne journée !
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30" Else: MsgBox "blabla" End If
AV
Merci !
J'avais cru cette ficelle trop ancienne pour que vous y reveniez....j'avais
pris la liberté de réaborder le tout dans une nouvelle aujourd'hui.
Bonne journée !
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then
MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30"
Else: MsgBox "blabla"
End If
J'avais cru cette ficelle trop ancienne pour que vous y reveniez....j'avais pris la liberté de réaborder le tout dans une nouvelle aujourd'hui.
Bonne journée !
Ok, comme ça (test simultané dans 2 plages différentes), je comprends mieux
If [IsNumber(Match("toto1",C26:C30, 0) + Match("toto2",E26:E30, 0))] Then MsgBox "toto1 présent en C26:C30 ET toto2 présent en E26:E30" Else: MsgBox "blabla" End If
AV
AV
De façon plus conventionnelle :
If IsNumeric(Application.Match("toto1", Range("C26:C30"), 0)) _ And IsNumeric(Application.Match("toto2", Range("E26:E30"), 0)) Then MsgBox "ok"
AV
De façon plus conventionnelle :
If IsNumeric(Application.Match("toto1", Range("C26:C30"), 0)) _
And IsNumeric(Application.Match("toto2", Range("E26:E30"), 0)) Then MsgBox "ok"