Filtrer et changer le contenu avec une Macro

Bonjour Forums

voici un fichier Excel exemple d'un travail, je cherche à avoir le résultat suivant :

si dans une seule ligne il y a " STOCK LIMI " dans la colonne NUM1 et NUM2, je veux que dans la colonne NUM2 qu'on change l'expression STOCK LIMI par "Déjà en stock" avec mise en forme conditionnelle (remplissage vert avec un texte vert foncé)

j'ai fait cette tâche manuellement avec un enregistreur Macro pour avoir le code mais quand je le teste il ne fonctionne pas. vous trouverez la macro17 qui contient le code d'essai.

Merci d'avance.

4classeur1.xlsm (15.46 Ko)

Bonjour,

A tester :

Nb : Il faudrait plutôt travailler avec un onglet modèle qui contiendrait déjà toutes les MFC.

Sub MajNum2()

Dim I As Integer
Dim AireNum1 As Range, AireNum2 As Range

    Set AireNum1 = Range("Tableau3[NUM1]")
    Set AireNum2 = Range("Tableau3[NUM2]")

    For I = 1 To AireNum1.Count
        If AireNum1(I) = "STOCK LIMI" And AireNum2(I) = "STOCK LIMI" Then
           AireNum2(I) = "Déjà en stock"
        End If

    Next I

    With AireNum2
         .FormatConditions.Add Type:=xlExpression, Formula1:="=C2=""Déjà en stock"""
         .FormatConditions(.FormatConditions.Count).SetFirstPriority
         With .FormatConditions(1).Font
              .ThemeColor = xlThemeColorAccent6
              .TintAndShade = -0.249946592608417
         End With
         With .FormatConditions(1).Interior
              .PatternColorIndex = xlAutomatic
              .ThemeColor = xlThemeColorAccent6
              .TintAndShade = 0.599963377788629
         End With
        .FormatConditions(1).StopIfTrue = False
    End With

    Set AireNum1 = Nothing: Set AireNum2 = Nothing

End Sub
Rechercher des sujets similaires à "filtrer changer contenu macro"