Mise en forme conditionnelle sur VBA
Résolu
marmotte38630
-
marmotte38630 -
marmotte38630 -
Bonjour,
Je suis en train de faire un tableur de suivi de réponse pour ma recherche d'emploi.
J'aimerai donc créer une macro qui hachure la ligne correspondante à la valeur "non" dans une colonne. ce que je veux faire c'est si dans la colonne G je tape non sur une ligne alors cette ligne se hachure
Pour le moment ma macro ressemble à cela mais ma partie "if select range = non then" n'est pas correct apparemment comment la modifier.
Sub réponse()
Dim i As Integer
For i = 2 To 100
Range("g" & i).Select
if select range = non then
Range(g & i).Activate
With Selection.Interior
.Pattern = xlLightUp
.PatternColorIndex = xlAutomatic
.ColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End Sub
en vous remerciant par avance
Je suis en train de faire un tableur de suivi de réponse pour ma recherche d'emploi.
J'aimerai donc créer une macro qui hachure la ligne correspondante à la valeur "non" dans une colonne. ce que je veux faire c'est si dans la colonne G je tape non sur une ligne alors cette ligne se hachure
Pour le moment ma macro ressemble à cela mais ma partie "if select range = non then" n'est pas correct apparemment comment la modifier.
Sub réponse()
Dim i As Integer
For i = 2 To 100
Range("g" & i).Select
if select range = non then
Range(g & i).Activate
With Selection.Interior
.Pattern = xlLightUp
.PatternColorIndex = xlAutomatic
.ColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End If
End Sub
en vous remerciant par avance
A voir également:
- Interior.pattern vba
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Dépassement de capacité vba ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
3 réponses
Bonjour,
bien que j' approuve totalement l'opinion et sa démonstration de ligne entière en MEFCde l'ami Vaucluse
ci joint proposition en VBA
macro événementiellement à copier-coller dans le module VBA de la feuille concernée
M... puissance 13 pour ta recherche de boulot
bien que j' approuve totalement l'opinion et sa démonstration de ligne entière en MEFCde l'ami Vaucluse
ci joint proposition en VBA
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns("G")) Is Nothing Then If Target = "non" Then Rows(Target.Row).Interior.Pattern = xlLightUp Else Rows(Target.Row).Interior.Pattern = xlNone End If End If End Sub
macro événementiellement à copier-coller dans le module VBA de la feuille concernée
M... puissance 13 pour ta recherche de boulot
Bonjour
pourquoi une macro alors qu'Excel permet de la faire avec les MFC et la formule, pour un nom en G1 et un tableau de A1 à Z100 par exemple:
sélectionnez le tableau complet
MFC par formule
=$G1="non"
format hachuré.
(s'il s'agit d'Excel, bien sur)
crdlmnt
Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
pourquoi une macro alors qu'Excel permet de la faire avec les MFC et la formule, pour un nom en G1 et un tableau de A1 à Z100 par exemple:
sélectionnez le tableau complet
MFC par formule
=$G1="non"
format hachuré.
(s'il s'agit d'Excel, bien sur)
crdlmnt
Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
tout à fait d'accord pour vos objectifs concernant VBA, quant au fait que l'on ne peut hachurer en MFC, c'est un autre sujet!!
Voyez ici:
https://www.cjoint.com/?BAFnjMg17wl
bonne route
crdlmnt
Voyez ici:
https://www.cjoint.com/?BAFnjMg17wl
bonne route
crdlmnt
bonjour, michel_m
merci pour l'idée de macro, pourrais tu éclairer ma lanterne car je comprends en gros la macro mais je connais pas "target" à quoi cela correspond-t il.
j'ai essayé la macro mais j'arrive pas à la lancer, comment dois'je faire.
existe-t-il une autre solution sans passer par une private sub?
merci pour l'idée de macro, pourrais tu éclairer ma lanterne car je comprends en gros la macro mais je connais pas "target" à quoi cela correspond-t il.
j'ai essayé la macro mais j'arrive pas à la lancer, comment dois'je faire.
existe-t-il une autre solution sans passer par une private sub?
La macro est une macro événementielle et est à installer dans un module feuille. manière simple
tu fais un copier du code
clic droit sur l'onglet (en bas de l'cran XL) de la feuille concernée
visualiser le code
coller
target est un des param^tres de la macro
Private Sub Worksheet_Change(ByVal Target As Range)
déclarée en cellule(range) et désigne la cellule active
existe-t-il une autre solution sans passer par une private sub?
fais déjà marcher celle que je t'ai proposée: tu pourras alors juger si c'est intéressant d'appuyer sur un bouton
tu fais un copier du code
clic droit sur l'onglet (en bas de l'cran XL) de la feuille concernée
visualiser le code
coller
target est un des param^tres de la macro
Private Sub Worksheet_Change(ByVal Target As Range)
déclarée en cellule(range) et désigne la cellule active
existe-t-il une autre solution sans passer par une private sub?
fais déjà marcher celle que je t'ai proposée: tu pourras alors juger si c'est intéressant d'appuyer sur un bouton