Excel- VBA-Comment colorier une zone variable

Résolu/Fermé
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 - 5 févr. 2010 à 17:53
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 - 5 févr. 2010 à 22:06
Bonjour,

Je voudrais affecter la même couleur à une zone variable au fur et à mesure qu'elle s'allonge.
Voici ce qui la défini:
Range("B3:E" & Range("A1").Value)
Le contenu de [A1] étant la dernière ligne de la zone.

Quelqu'un peut-il m'écrire un code pour cela SVP, peu importe la couleur ?

Merci
A voir également:

5 réponses

Utilisateur anonyme
5 févr. 2010 à 18:25
Range("B3:E" & Range("A1").Value).Interior.ColorIndex = 255
Range("B3:E" & Range("A1").Value).Interior.Pattern = xlSolid

La première ligne donne la couleur, la deuxième le type de remplissage.
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
5 févr. 2010 à 18:36
autre proposition ....

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim C As Variant

For Each C In Range("B3:E" & Range("A1").Value)
    C.Interior.ColorIndex = 4  'vert clair
Next
End Sub
0
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 53
5 févr. 2010 à 19:01
Merci tout 2,

J'aurais jamais trouvé ça!
J'ai plus dur maintenant:

Mais sauriez-vous mettre des bordures dans la même zone SVP ?
Je repose ma question sur un autre poste afin de clore celui-ci, se sera plus correcte.

Merci encore.
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 289
5 févr. 2010 à 21:29
utilise l'enregistreur de macro pour récupérer le format que tu veux
outils/macros/enregistrer une ...macro1
selectionne ta plage applique le format puis arrête la macro (outils/macro/arreter l'enregistrement)
puis alt F11 (editeur visual basic)
et tu vas trouver un code avec plusieurs
With Selection.Borders(.......)
.LineStyle = xlContinuous
.ColorIndex = xlAutomatic
......
.....
End With


maintenant tu as le code

tu ecris

Range("B3:E" & Range("A1").Value).select
puis tu écris
with selection....

'recopie ici les différents formats que tu as créé
end with

je ne peux pas te le faire parceque j'ai 2007 et il y a une incompatibilité
0

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

Posez votre question
mod77 Messages postés 1273 Date d'inscription vendredi 10 juillet 2009 Statut Membre Dernière intervention 14 janvier 2024 53
5 févr. 2010 à 22:06
Merci Bidouilleu_R, que c'est astucieux !
Je vais essayer de retenir ça!

Merci.
0