Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 conserver les lignes contenant du texte rouge

snipe49

XLDnaute Nouveau
Bonjour a tous

je cherche a conserver uniquement les lignes qui contiennent du texte rouge

ci joint mon fichier

merci d'avance pour votre aide
 

Pièces jointes

  • valeur tef incorrect apres usinage.xlsx
    41.6 KB · Affichages: 14
Solution
Bonjour Snipe, Njhub,
Un essai en PJ avec :
VB:
Sub SupLignes()
    Dim ValMin, ValMax, DL, L
    Application.ScreenUpdating = False
    ValMin = Val(Split([V2].FormatConditions(2).Formula1, "=")(1))  ' Recup val min filtrage
    ValMax = Val(Split([V2].FormatConditions(3).Formula1, "=")(1))  ' Recup val max filtrage
    DL = [V100000].End(xlUp).Row                                    ' Dernière ligne
    For L = DL To 2 Step -1                                         ' Si <Valmin et >ValMax on supprime la ligne
        If Cells(L, "V") < ValMin Or Cells(L, "V") > ValMax Then Rows(L).Delete Shift:=xlUp
    Next L
End Sub
NB : Le bouton gris sert à ré initialiser le tableau pour les tests.

njhub

XLDnaute Occasionnel
Bonjour snipe49, le forum

Essayez avec une formule reprenant le paramétrage de vos formats conditionnels :
Code:
=SI(OU(J2<20;K2<20;L2<25,3;M2<25,3;N2<4;O2<4;P2>0,5;Q2>0,5;R2>0,3;V2<1378;V2>1381);LIGNE();"")
qui renvoie le n° de ligne quand l'une au moins des conditions est vérifiée

 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Snipe, Njhub,
Un essai en PJ avec :
VB:
Sub SupLignes()
    Dim ValMin, ValMax, DL, L
    Application.ScreenUpdating = False
    ValMin = Val(Split([V2].FormatConditions(2).Formula1, "=")(1))  ' Recup val min filtrage
    ValMax = Val(Split([V2].FormatConditions(3).Formula1, "=")(1))  ' Recup val max filtrage
    DL = [V100000].End(xlUp).Row                                    ' Dernière ligne
    For L = DL To 2 Step -1                                         ' Si <Valmin et >ValMax on supprime la ligne
        If Cells(L, "V") < ValMin Or Cells(L, "V") > ValMax Then Rows(L).Delete Shift:=xlUp
    Next L
End Sub
NB : Le bouton gris sert à ré initialiser le tableau pour les tests.
 

Pièces jointes

  • valeur tef incorrect apres usinage.xlsm
    68.9 KB · Affichages: 13

snipe49

XLDnaute Nouveau
Merci c'est bien ce que je veux par contre excel me bloque ta macro
 

fanch55

XLDnaute Barbatruc
Salut,
Code basique, on ne cherche pas ce qui cause quoi, on cherche la couleur ciblée :
VB:
Sub Sup_Rouge()
Dim Rw As Integer, Cl As Range
Const Target_Color = 393372 ' le rouge de la MFC
    For Rw = [Test].Rows.Count To 1 Step -1
        For Each Cl In [Test].Rows(Rw).Columns
            If Cl.DisplayFormat.Font.Color = Target_Color Then
                Cl.EntireRow.Delete
                Exit For
            End If
        Next
    Next
End Sub
 

snipe49

XLDnaute Nouveau
Petite question
A quoi sert ta feuille REF?
 

snipe49

XLDnaute Nouveau
Mais je suis bon d'accord que moi j'y arrives pas
Je doute pas de vos capacités
voila les fichiers au complet
 

Pièces jointes

  • test.zip
    43.8 KB · Affichages: 3
  • VALEUR TEF2.xlsx
    66.8 KB · Affichages: 3

snipe49

XLDnaute Nouveau
Alors oui j'avais compilé mon fichier zip au tout début avant de revérifier toutes mes données.
Dans mes fichiers sources les infos sont bonnes.

Merci de ton aide
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous,
je cherche a conserver uniquement les lignes qui contiennent du texte rouge

Pour le fun, une piste de macro :
VB:
Sub NiNoirNiBlanc()
Dim lst As ListObject, i&, x, dpf, BW As Boolean
   Application.ScreenUpdating = False
   Set lst = Sheets("test").Range("a1").ListObject
   For i = lst.ListRows.Count To 1 Step -1
      BW = True
      For Each x In lst.ListRows(i).Range
         If x <> "" Then
            dpf = x.DisplayFormat.Font.Color
            If dpf <> vbBlack And dpf <> vbWhite Then BW = False: Exit For
         End If
      Next x
      If BW Then lst.ListRows(i).Delete
   Next i
End Sub
 
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Inactif
Bonjour,
C'est moi ou????
Tu valides une réponse qui fait exactement l'inverse de la demande, et qui ne traite qu'une colonne (la V), alors que tes MEFC concernent 11 colonnes...
Bah, passe de bonnes fêtes, et meilleurs vœux
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…