Microsoft 365 Code VBA police de couleur

  • Initiateur de la discussion Initiateur de la discussion DR85
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

DR85

XLDnaute Junior
Bonjour,

Dans le fichier j’ai une colonne avec des nombres. Certains ne sont pas en police de couleur noire.
Si une cellule de la colonne G n’est pas en police de couleur noire alors renvoyer le texte « PROD » en colonne V (même ligne).
Précision: la colonne G se remplira au fil des jours.
pourriez vous svp m’aider?
cordialement
Damien
 

Pièces jointes

Mais lorsque la colonne G "s'agrandit" il faut penser à copier les formules de la colonne V.
Sinon le faire par macro avec un bouton de mise à jour, ou copier la formule en V sur plusieurs milliers de lignes pour que cela soit automatique.
 
Autre proposition avec une Sub :

VB:
Sub CheckTxtColor()
Dim DerL As Long, Rg As Range, R, L As Long

    With Feuil1
        DerL = .Cells(.Rows.Count, 7).End(xlUp).Row
        Set Rg = .Range("G1:G" & DerL)
        For Each R In Rg
            L = R.Row
            If R.Font.ColorIndex <> 1 Then
                .Range("V" & L).Value = "Prod"
            Else
                .Range("V" & L).Value = ""
            End If
        Next
    End With
    
    Set Rg = Nothing
    
End Sub
 
Mais lorsque la colonne G "s'agrandit" il faut penser à copier les formules de la colonne V.
Sinon le faire par macro avec un bouton de mise à jour, ou copier la formule en V sur plusieurs milliers de lignes pour que cela soit automatique.
bonjour

voilà le genre de choses a quoi on a à faire quand on travaille pas avec des tableaux structurés
😉
 
Bonjour,

Attention! Quand vous changez la couleur de police, les résultats des fonctions (ou procédures) ne sont pas recalculés. Le changement de couleur (police et/ou fond de la cellule) ne déclenche pas d'évènement au niveau d'Excel. Il faut actualiser manuellement. Utiliser le forçage du recalcul par la combinaison des trois touches Ctrl+Alt+F9 (touche de fonction F9).
 
Dernière édition:
Bonjour,

Attention! Quand vous changez la couleur de police, les résultats des fonctions (ou procédures) ne sont pas recalculés. Le changement de couleur (police et/ou fond de la cellule) ne déclenche pas d'évènement au niveau d'Excel. Il faut actualiser manuellement. UUtiliser le forçage du recalcul par la combinaison des trois touches Ctrl+Alt+F9 (touche de fonction F9).
Bonjour,
Effectivement il n’y a pas d’actualisation automatique. Dommage c’était mon objectif. 😩
Je vais essayer le forçage…
Ou peut être un bouton actualiser, ça peut fonctionner?
 
Autre proposition avec une Sub :

VB:
Sub CheckTxtColor()
Dim DerL As Long, Rg As Range, R, L As Long

    With Feuil1
        DerL = .Cells(.Rows.Count, 7).End(xlUp).Row
        Set Rg = .Range("G1:G" & DerL)
        For Each R In Rg
            L = R.Row
            If R.Font.ColorIndex <> 1 Then
                .Range("V" & L).Value = "Prod"
            Else
                .Range("V" & L).Value = ""
            End If
        Next
    End With
   
    Set Rg = Nothing
   
End Sub
Bonjour,
Je n’ai pas encore essayer car la premiere proposition fonctionne. Mais je garde votre proposition pour un prochain test. Merci
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
614
Réponses
16
Affichages
1 K
Retour