Menu

MFC par rapport au chiffre contenu dans la cellule d'une colonne [Résolu/Fermé]

Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
- - Dernière réponse : f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
- 27 sept. 2016 à 13:25
Bonjour,

J'essaie d'appliquer une MFC dès lors que les chiffres 1 à 6 se trouvent dans la colonne B de mon tableau. Pour cela, j'ai essayé d'utiliser la fonction .find mais je n'arrive pas à la faire fonctionner... Voici mon code :
Sub MFC_alerts()
' MFC sur les alertes
Dim i As Integer
derniereligne = Range("B50000").End(xlUp).Row
For i = 3 To derniereligne
' Alerte 1
If Range("B" & i).Find("1", Lookat:=xlPart) Then
Range("i26,i27").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
' Alerte 2
ElseIf Range("i2").Find("2", Lookat:=xlPart) Then
Range("i30").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
'Alerte 3
ElseIf Range("i2").Find("3", Lookat:=xlPart) Then
Range("i19,i22").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
'Alerte 4
ElseIf Range("i2").Find("4", Lookat:=xlPart) Then
Range("i37").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
'Alerte 5
ElseIf Range("i2").Find("5", Lookat:=xlPart) Then
Range("i33").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
'Alerte 6
ElseIf Range("i2").Find("6", Lookat:=xlPart) Then
Range("i41").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 192
.TintAndShade = 0
.PatternTintAndShade = 0
End With
With Selection.Font
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
End With
Else
End If
Next i
End Sub

Des idées ?
Merci par avance pour votre aide :)

Afficher la suite 

3 réponses

Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371
0
Merci
Bonjour,

Pourquoi du VBA pour ces "MFC" ??
agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
Non en fait la valeur recherchée se trouve en B et i est mon numéro de ligne (ma variable). Et non la MFC ne se fait pas sur les mêmes colonnes suivant les alertes du coup on peut pas mettre de boucle en place.
f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371 > agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
Re,

Et non la MFC ne se fait pas sur les mêmes colonnes

Plait-il ??
Vous pouvez reexpliquer ce que vous voulez ??
agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
Voici les six tests avec les conditions et les MFC associées :
- Si ("B" & i) contient 1 : changer la couleur de i26 et i27 (donc la colonne Z et AA, ligne i)
- Si ("B" & i) contient 2 : changer la couleur de i30 (colonne AD, ligne i)
- Si ("B" & i) contient 3 : changer la couleur de i19 et i22 (colonne S et V, ligne i)
- Si ("B" & i) contient 4 : changer la couleur de i38 (colonne AL, ligne i)
- Si ("B" & i) contient 5 : changer la couleur de i35 (Colonne AI, ligne i)
- Si ("B" & i) contient 6 : changer la couleur de i43 (colonne AQ, ligne i)
f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371 > agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
Re,

- Si ("B" & i) contient 2 : changer la couleur de i30 (colonne AD, ligne i)

Que vient faire (colonne AD, ligne i) pour cellule I30 ???????????????????????????
agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
ah ah c'est parce que 30 c'est le numero de colonne donc AD et i le numéro de ligne qui correspond à ma variable.
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
3622
0
Merci
bonjour
F89 :excuse l'incruste

comme il existe un coce pour enlever ces vraies-fausses MFC
Option Explicit
'--------------------------------------------
Sub vraie_fausse_mfc()
Dim Derlig As Integer, Cptr As Integer, D_mfc As Object, T_colB, Ref As Byte


Application ScreenUpdating = False
Derlig = Columns("B").Find(what:="*", searchdirection:=xlPrevious).Row
Set D_mfc = CreateObject("scripting.dictionnary")
For Cptr = 1 To 6
D_mfc.Add Cptr, ""
Next
T_colB = Application.Transpose(Range("B1:B" & Derlig))

For Cptr = 1 To Derlig
Ref = T_cob(Cptr)
If D_mfc.exists(Ref) Then
Select Case Ref
Case 1
With Range(Cells(26, Cptr), Cells(27, Cptr))
.Interior.Color = 192
.Font.Color = xlThemeColorDark1
End With
Case 2
'.......etc
End Select
End Sub


nota
xlThemeColorDark1 correspond à la couleur par défaut d'excel
michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
3622 > f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
-
Et pourquoi ca flotte ?
f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371 > michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
-
Re,

J'aurai pu ecrire: Ca roule ??
michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
3622 > agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
et si tu lisais ce que j'avais marqué ?

J'AI FAIS LE CODE SANS TENIR COMPTE DE L4ENLEVEMENT DES MFC PUISQUE TU ECRIS QUE TU L'A FAIT

Inscrite sur ma blacklist --->abandon de toute aide
agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
> michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
-
Je suis dsl Michel je n'ai pas du tout compris ce que tu avais fait.
" comme il existe un coce pour enlever ces vraies-fausses MFC"
j'ai pensé que le code que tu m'avais montré était pour enlever justement les MFC...
Je ne comprend pas suffisemment VBA pour comprendre ce que tu avais fait...
agathe182
Messages postés
49
Date d'inscription
mercredi 24 août 2016
Statut
Membre
Dernière intervention
26 septembre 2016
-
Top ça marche trop bien :)
Merci beaucoup !
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371
0
Merci
Re michel_m,

michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
3622 -
bof
f894009
Messages postés
14356
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 mai 2019
1371 > michel_m
Messages postés
15825
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
20 mai 2019
-
Bonjour,

En français : Bande originale de film, OkAYYYYYYY !!!!!!