report de toutes les lignes Si en colonne A il y a un texte spécifique

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 !

pierre4

XLDnaute Occasionnel
bonjour le forum,
je me casse la tête, n'étant pas un expert...après plusieurs recherches dans le forum

je voudrais pouvoir automatiquement
reporter une ligne complète dans une autre feuille SI en colonne A elle comporte un texte spécifique ou un nombre
pièce jointe à l'appui...


merci à celui qui peut me dépanner...🙂
Pierre
 

Pièces jointes

Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

Bonjour Voisin 😉

Tu sais utiliser le filtre élaboré couplé à VBA ?

Si oui, tu utilises cette formule pour ton filtre:
Code:
=OU(ESTNUM(TROUVE("*produit*";A14)*1);ESTNUM(GAUCHE(A14)*1))
en prenant d'avoir une cellule vide au dessus de la cellule ou tu saisiras cette formule.

Donc je résume (voila ce j'ai fait lors de mes tests sur ton fichier)
1) en A12 , je saisis la formule citée plus haut
2) en A13, je saisis: XXX (que je formate en couleur blanche pour la police)
3) Je sélectionne ton tableau : A13:G101
4) J'applique un filtre élaboré avec pour critères la référence suivante : $A$11:$A$12

et j'obtiens le résultat escompté

C'est ensuite qu'intervient VBA pour la recopie vers l'emplacement de ton choix.
 
Dernière édition:
Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

merci voisin!
mais je n'ai rien compris!!!pas clair pour un nouveau passioné d'exel!!!
le vba je ne connais pas encore...

peut etre peux tu me réexpliquer autrement ou avec un fichier!
merci
 
Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

j'ai réussi à filtrer comme tu me l'as indiqué!
mais la formule je ne comprends pas : OU(ESTNUM(TROUVE("*produit*";A14)*1);ESTNUM(GAUCH E(A14)*1))
sinon pour la suite ?
merci
 
Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

Re, me voir revenu de l'enfer de la Consommation.

Je vais essayer de t'expliquer la formule en la découpant en morceaux et avec un exemple:
Dans un classeur vierge
Saisis en A1: TOTAL Produit fini
en B1: la formule suivante : =ESTNUM(TROUVE("produit";A1))
Tu vois alors s'afficher VRAI en B1
en A2: saisis : 1abc
et en B2: la formule: =ESTNUM(GAUCHE(A2)*1) qui elle aussi affiche VRAI

Mainntenant si' lon revient à ta pièce jointe et à la formule avec le OU
qui associent les deux formules , cela donne comme critère pour le filtre élaboré:
les cellules qui renvoient VRAI si TROUVE détecte le mot produit (il renvoie une valeur numérique) ou les cellule dont le premier caractère est un chiffre.

J'espère avoir été plus clair.
 
Dernière édition:
Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

Re

Je te poste le code VBA correspondant au filtrage des données selon tes critères
Code:
Sub Macro1() 'code ecrit sous Excel 2010, donc à adapter selon les versions d'Excel
' partie du code permettant de filtrer les données
With Range("A13")
    .Value = "XXX"
    .Font.ThemeFont = xlThemeFontNone' à adapter selon version Excel
    .Offset(-1).FormulaR1C1 = "=OR(ISNUMBER(SEARCH(""*produits*"",R[2]C)*1),ISNUMBER(LEFT(R[2]C)*1))"
    .Resize(89, 7).AdvancedFilter _
                Action:=xlFilterInPlace, _
                CriteriaRange:=Range("A11:A12"), _
                Unique:=False
End With
End Sub
 
Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

bonjour,
merci pour les explications, cela marche pour les chiffres, pas pour le texte?faut il un format spécial: texte, standard, nombre????

je ne comprends pas

mettre les XXX (...est ce parce qu'il n'y avait rien en entête de colonne de mon tableau?
peut on nommer un tableau (comme définir un nom) car il ne conserve pas toujours les plages...?
le vba où le mettre?...
merci
 

Pièces jointes

Re : report de toutes les lignes Si en colonne A il y a un texte spécifique

Bonjour Pierrejean (Merci d'avoir pris le relais 😉 )

Pierre4

Je finis de manger et je repasse par ton fil, pour voir le travail de Pierrejean et te donner plus de détails sur ma manière de faire. Comme cela tu auras le choix 😉
EDITION: Voila repas terminé, cadeaux emballés, digestion faite, me revoilou
Cliques sur la miniature ci-dessous pour l'afficher en taille réelle
exVBAP4.jpg
Code:
Sub Macro1()
'Variables
Dim Fmu_Crit$, rngCrit As Range, rngRST As Range

'///_Création du critère de filtrage par formule_///
Fmu_Crit = "=OR(ISNUMBER(SEARCH(""*produits*"",R[2]C)),ISNUMBER(LEFT(R[2]C)*1))"
With Feuil1
    .[A11].Formula = Fmu_Crit: Set rngCrit = .[$A$10:$A$11]
'///_fin création critère_///

'Application du Filtre élaboré
    .[tablo].AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=rngCrit, Unique:=False
    Set rngRST = [_FilterDataBase]
'Recopie des données filtrées en Feuil2
    rngRST.Offset(1).Resize(rngRST.Rows.Count - 1).SpecialCells(12).Copy Feuil2.[A65536].End(xlUp)(2)
'Suppresion du filtre élaboré
    .ShowAllData
End With
'Nettoyage
Set rngCrit = Nothing
Set rngRST = Nothing
Application.CutCopyMode = False
End Sub
PS: Dans mon exemple, j'ai nommé la plage de cellules: A12:G23 -> tablo
Nom que j'emploie dans la macro ci-dessus pour plus de facilité.

Si tu as des questions, n'hésites pas. Je repasserai par ici.

Pierrejean: comme toujours du bel ouvrage bien bouclé 😉
 
Dernière édition:
report de toutes les lignes Si filtrées -copie données filtrées vers nouvelle feuille

bonjour,🙂
---pour le filtre avancé :je viens d'essayer avec la formule de ton image jointe (ce n'est plus TROUVE mais CHERCHE que tu as mis...)
,avec chercheça marche, le filtre est bon c'est correct
---j'ai copié la macro, je dois faire un commandbutton je suppose, comment? dois je le faire dans la nouvelle feuille (cela serait bien) est ce possible??
merci de votre aide!🙂
 
- 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

A
Réponses
6
Affichages
2 K
alain.dutoit
A
Y
Réponses
7
Affichages
2 K
Y
E
Réponses
13
Affichages
3 K
elisagssrd
E
Retour