J'ai un problème urgent avec une macro.
A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les
couleurs des cellules(si la cellule est rouge, relever la valeur) avec la
commande suivante
Selection.Interior.Color=vbred.
Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
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
FxM
Bonjour à tous,
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur résultat.
Merci de votre aide à l'avance!!! :-)
Bonsoir,
Parmi les possibilités : 1) color / colorindex Dans mon classeur d'essai, une cellule rouge renvoie : 255 avec color 3 avec colorindex
2) la couleur n'est pas 'rouge' Solution : trouver la bonne couleur via par exemple la commande inverse (couleur? = selection.interior.colorindex)
3) la couleur est issue d'une mise en forme conditionnelle Solution : il faut reprendre les mêmes conditions que la MFC et non la couleur directement.
@+ FxM
Bonjour à tous,
J'ai un problème urgent avec une macro.
A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les
couleurs des cellules(si la cellule est rouge, relever la valeur) avec la
commande suivante
Selection.Interior.Color=vbred.
Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
Merci de votre aide à l'avance!!!
:-)
Bonsoir,
Parmi les possibilités :
1) color / colorindex
Dans mon classeur d'essai, une cellule rouge renvoie :
255 avec color
3 avec colorindex
2) la couleur n'est pas 'rouge'
Solution : trouver la bonne couleur via par exemple la commande inverse
(couleur? = selection.interior.colorindex)
3) la couleur est issue d'une mise en forme conditionnelle
Solution : il faut reprendre les mêmes conditions que la MFC et non la
couleur directement.
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur résultat.
Merci de votre aide à l'avance!!! :-)
Bonsoir,
Parmi les possibilités : 1) color / colorindex Dans mon classeur d'essai, une cellule rouge renvoie : 255 avec color 3 avec colorindex
2) la couleur n'est pas 'rouge' Solution : trouver la bonne couleur via par exemple la commande inverse (couleur? = selection.interior.colorindex)
3) la couleur est issue d'une mise en forme conditionnelle Solution : il faut reprendre les mêmes conditions que la MFC et non la couleur directement.
@+ FxM
anonymousA
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1 à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then MsgBox c.Value End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" a écrit dans le message de news:
Bonjour à tous,
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
Merci de votre aide à l'avance!!! :-)
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1
à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then
MsgBox c.Value
End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" <linkha@discussions.microsoft.com> a écrit dans le message de
news: 065D20A8-45E1-41C2-9D4E-2D6B8C5E47D8@microsoft.com...
Bonjour à tous,
J'ai un problème urgent avec une macro.
A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les
couleurs des cellules(si la cellule est rouge, relever la valeur) avec la
commande suivante
Selection.Interior.Color=vbred.
Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas
la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un
meilleur
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1 à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then MsgBox c.Value End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" a écrit dans le message de news:
Bonjour à tous,
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
Merci de votre aide à l'avance!!! :-)
lin kha
Bonjour à tous et merci pour votre rapidité!!
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle. Quand je fais ce test: Range("A1").Select Msgbox(Selection.Interior.ColorIndex)
Ca me renvoie -4121 alors que ce devrait être 3. J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe. Si quelqu'un y comprend quelquechose?? Ou bien si quelqu'un connait une bidouille pour m'en sortir :-)
Bonne journée à tous
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1 à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then MsgBox c.Value End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" a écrit dans le message de news:
Bonjour à tous,
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
Merci de votre aide à l'avance!!! :-)
Bonjour à tous et merci pour votre rapidité!!
lol malgré tout, mon problème n'est toujours pas résolu...
C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par
mise en forme conditionnelle.
Quand je fais ce test:
Range("A1").Select
Msgbox(Selection.Interior.ColorIndex)
Ca me renvoie -4121 alors que ce devrait être 3.
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle,
j'utilise les mêmes conditions et la même syntaxe.
Si quelqu'un y comprend quelquechose??
Ou bien si quelqu'un connait une bidouille pour m'en sortir :-)
Bonne journée à tous
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1
à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then
MsgBox c.Value
End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" <linkha@discussions.microsoft.com> a écrit dans le message de
news: 065D20A8-45E1-41C2-9D4E-2D6B8C5E47D8@microsoft.com...
Bonjour à tous,
J'ai un problème urgent avec une macro.
A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les
couleurs des cellules(si la cellule est rouge, relever la valeur) avec la
commande suivante
Selection.Interior.Color=vbred.
Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas
la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un
meilleur
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle. Quand je fais ce test: Range("A1").Select Msgbox(Selection.Interior.ColorIndex)
Ca me renvoie -4121 alors que ce devrait être 3. J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe. Si quelqu'un y comprend quelquechose?? Ou bien si quelqu'un connait une bidouille pour m'en sortir :-)
Bonne journée à tous
soit la plage de cellules que tu as à tester , mettons p. les cellules de A1 à A1000.
Dim plageatester As Range, c As Range
Set plageatester = Range("D1:D30")
For Each c In plageatester
If c.Interior.ColorIndex = 3 Then MsgBox c.Value End If
Next
je te garantis que ca ne peut que marcher .
A+
"lin kha" a écrit dans le message de news:
Bonjour à tous,
J'ai un problème urgent avec une macro. A l'intérieur de celle-ci, j'ai une boucle qui fait des tests sur les couleurs des cellules(si la cellule est rouge, relever la valeur) avec la commande suivante Selection.Interior.Color=vbred. Mais le test n'est jamais pris en compte comme s'il ne reconnaissait pas la
couleur. J'ai aussi essayé avec ColorIndex=3 et je n'obtiens pas un meilleur
résultat.
Merci de votre aide à l'avance!!! :-)
AV
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
AV
lol malgré tout, mon problème n'est toujours pas résolu...
C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par
mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle,
j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
AV
lin kha
Voili Voilou: '***MEFC*** For col2 = 2 To col If Cells(4, col2).Value = wtest Then Exit For Else Range(Cells(5, col2), Cells(i, col2)).Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _ Formula1:="35" Selection.FormatConditions(1).Interior.ColorIndex = 3 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreaterEqual _ , Formula1:="35" With Selection.FormatConditions(2).Interior .ColorIndex = 4 '.PatternColorIndex = 4 End With ActiveWindow.SmallScroll Down:=3 End If Next
'***petit test pour vérifier ma couleur*** Range("A1").Select If Selection.Interior.ColorIndex = 3 Then MsgBox ("rouge") End If
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
AV
Voili Voilou:
'***MEFC***
For col2 = 2 To col
If Cells(4, col2).Value = wtest Then
Exit For
Else
Range(Cells(5, col2), Cells(i, col2)).Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _
Formula1:="35"
Selection.FormatConditions(1).Interior.ColorIndex = 3
Selection.FormatConditions.Add Type:=xlCellValue,
Operator:=xlGreaterEqual _
, Formula1:="35"
With Selection.FormatConditions(2).Interior
.ColorIndex = 4
'.PatternColorIndex = 4
End With
ActiveWindow.SmallScroll Down:=3
End If
Next
'***petit test pour vérifier ma couleur***
Range("A1").Select
If Selection.Interior.ColorIndex = 3 Then
MsgBox ("rouge")
End If
lol malgré tout, mon problème n'est toujours pas résolu...
C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par
mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle,
j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
Voili Voilou: '***MEFC*** For col2 = 2 To col If Cells(4, col2).Value = wtest Then Exit For Else Range(Cells(5, col2), Cells(i, col2)).Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _ Formula1:="35" Selection.FormatConditions(1).Interior.ColorIndex = 3 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreaterEqual _ , Formula1:="35" With Selection.FormatConditions(2).Interior .ColorIndex = 4 '.PatternColorIndex = 4 End With ActiveWindow.SmallScroll Down:=3 End If Next
'***petit test pour vérifier ma couleur*** Range("A1").Select If Selection.Interior.ColorIndex = 3 Then MsgBox ("rouge") End If
lol malgré tout, mon problème n'est toujours pas résolu... C'est vrai que je n'ai pas préciser que le fond des cellules se faisait par mise en forme conditionnelle.
Le plus simple : tester avec le même test logique qui sert pour la MEFC !
J'ai bien vérifier dans les conditions de ma mise en forme conditionelle, j'utilise les mêmes conditions et la même syntaxe.
Et si tu nous livrais la formule de la MEFC et la macro que tu utilises.. ?
AV
AV
'***petit test pour vérifier ma couleur***
Si tu teste sur la plage avec format conditionnel :
If ActiveCell < 35 Then MsgBox "Rouge " Else MsgBox "Vert"
AV
'***petit test pour vérifier ma couleur***
Si tu teste sur la plage avec format conditionnel :
If ActiveCell < 35 Then MsgBox "Rouge " Else MsgBox "Vert"