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

Fonction ESTCOULEUR

12 réponses
Avatar
milloche
Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci

10 réponses

1 2
Avatar
MichDenis
Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci
Avatar
milloche
J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert en A
ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser la
fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci



Avatar
milloche
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci







Avatar
MichDenis
Il n'y a pas d'événement susceptible de se déclencher
simplement parce que tu modifies la couleur d'une cellule
ou d'une plage de cellules.

Le bout de code que je t'ai donné s'applique seulement
si tu modifies la cellule A1 de la feuille. À la limite, si tu
avais une formule dans cette cellule, l'événement serait enclenché
dès que la cellule affiche un nouveau résultat.

Ce sont les limites si tu décides de travailler avec les couleurs !



"milloche" a écrit dans le message de groupe de discussion :
#
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci







Avatar
milloche
Bien compris
Je vais faire avec.
Merci pour ta rapidité en tous cas.
JMM

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

Il n'y a pas d'événement susceptible de se déclencher
simplement parce que tu modifies la couleur d'une cellule
ou d'une plage de cellules.

Le bout de code que je t'ai donné s'applique seulement
si tu modifies la cellule A1 de la feuille. À la limite, si tu
avais une formule dans cette cellule, l'événement serait enclenché
dès que la cellule affiche un nouveau résultat.

Ce sont les limites si tu décides de travailler avec les couleurs !



"milloche" a écrit dans le message de
groupe de discussion :
#
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à
une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert
en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des
formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci










Avatar
milloche
Tite dernière
Peux-tu modifier ton code pour qu'il fonctionne pour toute la colonne A,
sauf L1 et L2 (lignes de titres) et pas seulement A1. Me connaissant, je
vais encore chercher 2 jours avant d'y arriver !
<]:o))

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

Il n'y a pas d'événement susceptible de se déclencher
simplement parce que tu modifies la couleur d'une cellule
ou d'une plage de cellules.

Le bout de code que je t'ai donné s'applique seulement
si tu modifies la cellule A1 de la feuille. À la limite, si tu
avais une formule dans cette cellule, l'événement serait enclenché
dès que la cellule affiche un nouveau résultat.

Ce sont les limites si tu décides de travailler avec les couleurs !



"milloche" a écrit dans le message de
groupe de discussion :
#
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à
une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert
en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des
formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci










Avatar
MichDenis
Essaie ceci :

'----------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Set X = Intersect(Target, Range("A3:A" & Cells.Rows.Count))
If Not X Is Nothing Then
For Each c In X
If c.Interior.Color = vbRed Then
Call Macro1
Else
Call Macro2
End If
Next
End If
End If
End Sub
'----------------------------------------



"milloche" a écrit dans le message de groupe de discussion :
##
Tite dernière
Peux-tu modifier ton code pour qu'il fonctionne pour toute la colonne A,
sauf L1 et L2 (lignes de titres) et pas seulement A1. Me connaissant, je
vais encore chercher 2 jours avant d'y arriver !
<]:o))

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

Il n'y a pas d'événement susceptible de se déclencher
simplement parce que tu modifies la couleur d'une cellule
ou d'une plage de cellules.

Le bout de code que je t'ai donné s'applique seulement
si tu modifies la cellule A1 de la feuille. À la limite, si tu
avais une formule dans cette cellule, l'événement serait enclenché
dès que la cellule affiche un nouveau résultat.

Ce sont les limites si tu décides de travailler avec les couleurs !



"milloche" a écrit dans le message de
groupe de discussion :
#
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à
une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert
en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des
formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci










Avatar
MichDenis
Ajoute cette ligne immédiatement après la ligne
de déclaration de la procédure...
'déclaration des variables
Dim X As Range, C As Range
Avatar
milloche
Avec intersect, j'y serais jamais arrivé
IMPEC
Bon week end
@+

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

Essaie ceci :

'----------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Set X = Intersect(Target, Range("A3:A" & Cells.Rows.Count))
If Not X Is Nothing Then
For Each c In X
If c.Interior.Color = vbRed Then
Call Macro1
Else
Call Macro2
End If
Next
End If
End If
End Sub
'----------------------------------------



"milloche" a écrit dans le message de
groupe de discussion :
##
Tite dernière
Peux-tu modifier ton code pour qu'il fonctionne pour toute la colonne A,
sauf L1 et L2 (lignes de titres) et pas seulement A1. Me connaissant, je
vais encore chercher 2 jours avant d'y arriver !
<]:o))

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

Il n'y a pas d'événement susceptible de se déclencher
simplement parce que tu modifies la couleur d'une cellule
ou d'une plage de cellules.

Le bout de code que je t'ai donné s'applique seulement
si tu modifies la cellule A1 de la feuille. À la limite, si tu
avais une formule dans cette cellule, l'événement serait enclenché
dès que la cellule affiche un nouveau résultat.

Ce sont les limites si tu décides de travailler avec les couleurs !



"milloche" a écrit dans le message de
groupe de discussion :
#
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées,
c'est pourquoi j'ai eu cette idée de rajouter cette fonction couleur à
une
colonne existante.
Mais j'ai eu juste l'idée !
<]:o))

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

J'affecte la couleur rouge, ou une autre, manuellement en fonction de
la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert
en
A ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des
formules,
par exemple solde caisse ou solde banque. C'est la que je veux utiliser
la fonction qui donnera différents montants suivant la couleur de A.
Est-ce plus clair ?

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

Bonjour Milloche,


Bonjour Milloche,

A ) Tu nous as pas dit comment la couleur rouge se retrouve en A1.

B ) Tu devrais utiliser la constante VBRed au lieu du "colorindex" qui
est sujet à changement !

C ) Une proposition... un peu au hasard

Dans le module de ta feuille,

'---------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = Range("A1").Address Then
If Target.Interior.Color = vbRed Then
Call macro1
Else
Call macro2
End If
End If
End Sub
'---------------------------------




"milloche" a écrit dans le message de
groupe de discussion :

Bonjour tous
Je voudrais rajouter à mon excel 2000 une fonction perso.
=SI(ESTROUGE("A1");macro1;macro2) ou quelque chose s'en rapprochant.
Je voudrais les 2 solutions : soit le rouge (ou une autre couleur /
ColorIndex) concerne le fond ou concerne la couleur de police.
Et je patauge lamentablement comme d'habitude !
Merci













Avatar
Jac
... oui mais, le défaut de la mise en couleur, c'est que ça
n'intervient ni dans les tris ni dans les filtres. Donc en aucun cas ça
pourra te servir à afficher tous ceux qui correspondent à un ou
plusieurs critères, ni à faire un tableau croisé qui te fera les cumuls
par critère. Mais tu vas dire "... pas besoin pour le moment..." mais
un jour ou l'autre, tu finiras par avoir besoin de comparer combien et
pour quel CA il y a eu d'achats comptant ou à crédit.

Le mieux serait de rajouter une colonne, car je ne pense pas que tu en
utilises 256... et d'utiliser pour une mise en couleur automatique le
formatage conditionnel.

Jac

Le 25/07/2009, milloche a supposé :
Précision
Tu dois penser que je suis un peu bête car il suffirait de rajouter une
colonne type de paiement, seulement toutes mes colonnes sont occupées, c'est
pourquoi j'ai eu cette idée de rajouter cette fonction couleur à une colonne
existante.
Mais j'ai eu juste l'idée !
<]:o))



J'affecte la couleur rouge, ou une autre, manuellement en fonction de la
ligne concernée.
Par exemple si la ligne concerne un achat au comptant, je mets du vert en A
ou à crédit (rouge en A).
Ceci se répercutant sur les colonnes qui suivent, contenant des formules, par
exemple solde caisse ou solde banque. C'est la que je veux utiliser la
fonction qui donnera différents montants suivant la couleur de A.


1 2