Condition sur une couleur dans macro excel

vbdebut Messages postés 14 Date d'inscription mercredi 23 juillet 2003 Statut Membre Dernière intervention 4 septembre 2003 - 2 sept. 2003 à 12:39
cs_lca94 Messages postés 46 Date d'inscription mercredi 29 janvier 2003 Statut Membre Dernière intervention 28 janvier 2006 - 2 sept. 2003 à 17:11
Bonjour,

j'aurai besoin d'un coup de main pour faire une macro excel.
Je voudrais éxécuter un code si le texte écrit dans la cellule tant est noir. Merci d'avance pour votre aide

Vb debut :big)

5 réponses

cs_lca94 Messages postés 46 Date d'inscription mercredi 29 janvier 2003 Statut Membre Dernière intervention 28 janvier 2006
2 sept. 2003 à 13:44
ça dépend de ce que tu veux faire:

- soit c juste un pb de présentation suivant la valeur d'une ou plusiuers cellule : alors utilise /Format/Mise en forme conditionnelle : tu verras c puissant

- soit c un cas très particulier: alors il faut que tu fasse un Sub

exemple :
'En fait tu lances presque a tous les évènements pour prendre tous les cas de move possible un petit pb apelle "noir" qui vérifie la couleur de ta case
Private Sub Worksheet_Activate()
noir
End Sub

Private Sub Worksheet_Calculate()
noir
End Sub

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
noir
End Sub

Private Sub Worksheet_Deactivate()
noir
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
noir
End Sub

Sub noir()
'font.color=0 pour le noir, autre chiffres à chercher pour d'autrescouleurs
'les autres tests (<>"" c pour éviter de bocler si ya pas de texte ;)

If Range("A1").Value <> "" And Range("A1").Font.Color = 0 Then
'tu testes si c pas déjà fait, sinon ça flashe à mort If Range("B1").Value <> "<c 'est en noir" Then Range("B1").Value "<== c 'est en noir"
Else
Range("B1").Value = ""
End If
End Sub
[blue]

/---\
:big) [blue]lca
[mailto: lca94@hotmail.com]
[http:// www.fract.org]
0
cs_lca94 Messages postés 46 Date d'inscription mercredi 29 janvier 2003 Statut Membre Dernière intervention 28 janvier 2006
2 sept. 2003 à 13:52
tu peux aussi utilier un petit module (que tu ajouteras, au lieu de taper le code dans "Microsoft Exle Objects".Feuil1)

et tu fais cela:
Function quellecouleur(address As Range)
quellecouleur = address.Font.Color
End Function

et dans la feuille tu tapes la formule de la cellule de calcul comme cela:
=quellecouleur(A1)

là tu aura le nombre correspondant au RVB d ela couleur: toujors 0 pour black
0
vbdebut Messages postés 14 Date d'inscription mercredi 23 juillet 2003 Statut Membre Dernière intervention 4 septembre 2003
2 sept. 2003 à 13:53
Merci, je vais essayer! je veux en fait faire une opération(édition de bon de commande automatique) si la couleur de police du texte est noire. je vais essayer ce code et encore merci

Vb debut :big)
0
vbdebut Messages postés 14 Date d'inscription mercredi 23 juillet 2003 Statut Membre Dernière intervention 4 septembre 2003
2 sept. 2003 à 14:15
Dommage après essai cela ne fonctionne pas!!!!

Vb debut :big)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_lca94 Messages postés 46 Date d'inscription mercredi 29 janvier 2003 Statut Membre Dernière intervention 28 janvier 2006
2 sept. 2003 à 17:11
ha oui,
j'ai oublié de préciser (bêteùent) qu'il fallait mettre ce code dans la feuille correspondante sous VB ... tu fais ALT-F11 à partir de ta feuille

Là tu a a gauche laliste des feuillet de ton document: tu double-clique sur la bonne (présélectionnée normalement) et tu poses le code là :)
0
Rejoignez-nous