Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
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
Stéphane L.
Bonjour Mary;
Pas besoin de VBA, tu peux utiliser la mise en forme conditionnelle.
Si il te faut tout de même VBA, fait 1 macro automatique pour enregistrer 1 mise en forme conditionnelle. Tu n'as plus qu'à l'adapter pour l'intégrer dans ton code.
Stéphane.
"maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Bonjour Mary;
Pas besoin de VBA, tu peux utiliser la mise en forme conditionnelle.
Si il te faut tout de même VBA, fait 1 macro automatique pour enregistrer 1
mise en forme conditionnelle. Tu n'as plus qu'à l'adapter pour l'intégrer
dans ton code.
Stéphane.
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Pas besoin de VBA, tu peux utiliser la mise en forme conditionnelle.
Si il te faut tout de même VBA, fait 1 macro automatique pour enregistrer 1 mise en forme conditionnelle. Tu n'as plus qu'à l'adapter pour l'intégrer dans ton code.
Stéphane.
"maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Daniel
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Bonjour.
Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes
besoins.
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
maryola
Merci pour le code. Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Merci pour le code.
Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour.
Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes
besoins.
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Merci pour le code. Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
maryola
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision : j'ai plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p Set Plage = Range("total_p") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 36 Next d
'Couleur totaux ca Set Plage = Range("total_ca") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 24 Next d
'Couleur totaux mi Set Plage = Range("total_mi") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 4 Next d
'Couleur totaux f Set Plage = Range("total_f") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 43 Next d
'Couleur totaux cp Set Plage = Range("total_cp") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 33 Next d
'Couleur totaux aa Set Plage = Range("total_aa") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 15 Next d
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision : j'ai
plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très
bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p
Set Plage = Range("total_p")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 36
Next d
'Couleur totaux ca
Set Plage = Range("total_ca")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 24
Next d
'Couleur totaux mi
Set Plage = Range("total_mi")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 4
Next d
'Couleur totaux f
Set Plage = Range("total_f")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 43
Next d
'Couleur totaux cp
Set Plage = Range("total_cp")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 33
Next d
'Couleur totaux aa
Set Plage = Range("total_aa")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 15
Next d
Bonjour.
Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes
besoins.
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision : j'ai plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p Set Plage = Range("total_p") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 36 Next d
'Couleur totaux ca Set Plage = Range("total_ca") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 24 Next d
'Couleur totaux mi Set Plage = Range("total_mi") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 4 Next d
'Couleur totaux f Set Plage = Range("total_f") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 43 Next d
'Couleur totaux cp Set Plage = Range("total_cp") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 33 Next d
'Couleur totaux aa Set Plage = Range("total_aa") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 15 Next d
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Daniel
Il faut un début à tout. A partir de ta feuille, clique sur "Outils / Macro / Nouvelle macro. La fenêtre "Enregistrer une macro" apparaît. Clique sur "OK". Clique sur le bouton représentant un carré pour terminer la macro (tu as enregistré une macro vide. Clique sur Outils / Macro / Macros. Une fenêtre apparaît avec la liste des macros disponibles. Celle que tu viens d'enregistrer doit s'appeler "Macro1". Clique dessus eet clique sur modifier. Copie les lignes suivantes avant la ligne "End Sub". tu disposes d'une macro appelée "Macro1" (tu peux changer le nom). Une autre manière de procéder est la suivante : Clique sur Outils / Macro / Macros / Visual Basic editor Tu obtiens la même fenêtre que précédemment, mais sans macro. Repère le nom de ton classeur dans la partie gauche (ie. VBAProject(classeur1)). Clique dessus, puis, Insertion / Module. Copie alors, dans la partie droite la macro :
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
A ta disposition si tu as des problèmes. Daniel "maryola" a écrit dans le message de news:
Merci pour le code. Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Il faut un début à tout.
A partir de ta feuille, clique sur "Outils / Macro / Nouvelle macro. La
fenêtre "Enregistrer une macro" apparaît. Clique sur "OK". Clique sur le
bouton représentant un carré pour terminer la macro (tu as enregistré une
macro vide.
Clique sur Outils / Macro / Macros.
Une fenêtre apparaît avec la liste des macros disponibles. Celle que tu
viens d'enregistrer doit s'appeler "Macro1". Clique dessus eet clique sur
modifier.
Copie les lignes suivantes avant la ligne "End Sub".
tu disposes d'une macro appelée "Macro1" (tu peux changer le nom).
Une autre manière de procéder est la suivante :
Clique sur Outils / Macro / Macros / Visual Basic editor
Tu obtiens la même fenêtre que précédemment, mais sans macro. Repère le nom
de ton classeur dans la partie gauche (ie. VBAProject(classeur1)). Clique
dessus, puis, Insertion / Module. Copie alors, dans la partie droite la
macro :
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
A ta disposition si tu as des problèmes.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: FCEAB54C-7755-456B-92CE-E6D7D9107C9E@microsoft.com...
Merci pour le code.
Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour.
Le code s'applique à la colonne A. Modifie la ligne set Plage... selon
tes
besoins.
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé
de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire
cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Il faut un début à tout. A partir de ta feuille, clique sur "Outils / Macro / Nouvelle macro. La fenêtre "Enregistrer une macro" apparaît. Clique sur "OK". Clique sur le bouton représentant un carré pour terminer la macro (tu as enregistré une macro vide. Clique sur Outils / Macro / Macros. Une fenêtre apparaît avec la liste des macros disponibles. Celle que tu viens d'enregistrer doit s'appeler "Macro1". Clique dessus eet clique sur modifier. Copie les lignes suivantes avant la ligne "End Sub". tu disposes d'une macro appelée "Macro1" (tu peux changer le nom). Une autre manière de procéder est la suivante : Clique sur Outils / Macro / Macros / Visual Basic editor Tu obtiens la même fenêtre que précédemment, mais sans macro. Repère le nom de ton classeur dans la partie gauche (ie. VBAProject(classeur1)). Clique dessus, puis, Insertion / Module. Copie alors, dans la partie droite la macro :
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
A ta disposition si tu as des problèmes. Daniel "maryola" a écrit dans le message de news:
Merci pour le code. Je dois le place où ? (quand je vous dis que je suis nulle...)
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Daniel
Tu peux écrire comme cela, c'est plus condensé, mais l'exécution n'est pas plus rapide :
Sub test() Dim Plages, Couleurs, c As Range Plages = Array("total_p", "total_ca", "total_mi", "total_f", "total_cp", "total_aa") Couleurs = Array(36, 24, 4, 43, 33, 15) For i = 0 To UBound(Plages) For Each c In Range(Plages(i)) If c.Value > 0 Then c.Interior.ColorIndex = Couleurs(i) Next Next i End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision : j'ai plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p Set Plage = Range("total_p") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 36 Next d
'Couleur totaux ca Set Plage = Range("total_ca") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 24 Next d
'Couleur totaux mi Set Plage = Range("total_mi") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 4 Next d
'Couleur totaux f Set Plage = Range("total_f") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 43 Next d
'Couleur totaux cp Set Plage = Range("total_cp") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 33 Next d
'Couleur totaux aa Set Plage = Range("total_aa") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 15 Next d
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary
Tu peux écrire comme cela, c'est plus condensé, mais l'exécution n'est pas
plus rapide :
Sub test()
Dim Plages, Couleurs, c As Range
Plages = Array("total_p", "total_ca", "total_mi", "total_f", "total_cp",
"total_aa")
Couleurs = Array(36, 24, 4, 43, 33, 15)
For i = 0 To UBound(Plages)
For Each c In Range(Plages(i))
If c.Value > 0 Then c.Interior.ColorIndex = Couleurs(i)
Next
Next i
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 80A643FF-F0C8-49D1-B709-5F4E38F5E2EF@microsoft.com...
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision :
j'ai
plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très
bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p
Set Plage = Range("total_p")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 36
Next d
'Couleur totaux ca
Set Plage = Range("total_ca")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 24
Next d
'Couleur totaux mi
Set Plage = Range("total_mi")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 4
Next d
'Couleur totaux f
Set Plage = Range("total_f")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 43
Next d
'Couleur totaux cp
Set Plage = Range("total_cp")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 33
Next d
'Couleur totaux aa
Set Plage = Range("total_aa")
For Each d In Plage
If d.Value > 0 Then d.Interior.ColorIndex = 15
Next d
Bonjour.
Le code s'applique à la colonne A. Modifie la ligne set Plage... selon
tes
besoins.
Sub test()
Dim Plage As Range, c As Range
Set Plage = Range("A:A") 'Définit la plage à traiter
For Each c In Plage
If c.Value > 0 Then c.Interior.ColorIndex = 3
Next c
End Sub
Cordialement.
Daniel
"maryola" <maryola@discussions.microsoft.com> a écrit dans le message de
news: 6F88E42B-E165-452F-8236-FDB9F3535D69@microsoft.com...
Bonjour à toutes et à tous,
j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes
cellules
j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé
de
colonne.
Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire
cela
en vba. Mais là je suis totalement nulle en vba.
Quelqu'un pourrait-il m'aider ?
En vous remerciant tous.
Bon app"
Mary
Tu peux écrire comme cela, c'est plus condensé, mais l'exécution n'est pas plus rapide :
Sub test() Dim Plages, Couleurs, c As Range Plages = Array("total_p", "total_ca", "total_mi", "total_f", "total_cp", "total_aa") Couleurs = Array(36, 24, 4, 43, 33, 15) For i = 0 To UBound(Plages) For Each c In Range(Plages(i)) If c.Value > 0 Then c.Interior.ColorIndex = Couleurs(i) Next Next i End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Ca y est, ça marche, j'ai trouvé où le mettre. Une dernière précision : j'ai plusieurs colonnes, donc j'ai copié plusieurs fois le code. Ca marche très bien, mais n'y aurait il pas qq chose de plus "condensé" :
'Couleur totaux p Set Plage = Range("total_p") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 36 Next d
'Couleur totaux ca Set Plage = Range("total_ca") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 24 Next d
'Couleur totaux mi Set Plage = Range("total_mi") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 4 Next d
'Couleur totaux f Set Plage = Range("total_f") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 43 Next d
'Couleur totaux cp Set Plage = Range("total_cp") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 33 Next d
'Couleur totaux aa Set Plage = Range("total_aa") For Each d In Plage If d.Value > 0 Then d.Interior.ColorIndex = 15 Next d
Bonjour. Le code s'applique à la colonne A. Modifie la ligne set Plage... selon tes besoins.
Sub test() Dim Plage As Range, c As Range Set Plage = Range("A:A") 'Définit la plage à traiter For Each c In Plage If c.Value > 0 Then c.Interior.ColorIndex = 3 Next c End Sub
Cordialement. Daniel "maryola" a écrit dans le message de news:
Bonjour à toutes et à tous, j'ai un grand tableau dans lequel j'ai plusieurs colonnes. Dans mes cellules j'ai une formule toute bête : =NB.SI(C13:P13;"P") P étant mon intitulé de colonne. Je voudrais appliquer une couleur lorsque ma celulle est > 0 et faire cela en vba. Mais là je suis totalement nulle en vba. Quelqu'un pourrait-il m'aider ? En vous remerciant tous. Bon app" Mary