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

XL 2016 Trouver une donnée ou texte et retranscrire en mot dans autre cellule

ratsavong

XLDnaute Nouveau
Bonjour à tous,

J'ai besoin de vos compétences pour travailler le fichier ci joint: j'ai besoin en fonction des noms des fichiers de répartir les données dans les onglets
==>Onglet RELEVE Si je trouve RDC ou RELEVE de la feuille 1 colonne A ou D
==> Onglet WEB Si je trouve AFP ou 0000 colonne D ou RELEVE colonne A
==>Onglet MAILING Si je trouve Mailing


Merci pour votre aide,
virginie
 

Pièces jointes

  • loiC.xlsx
    14.3 KB · Affichages: 11

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Une proposition par power query après avoir transformé votre tableau en tableau structuré nommé "T_Datas"

Comme on ne sait pas trop ce que vous entendez par "Si je trouve" est-ce que ça veut dire que la colonne doit être égale à ou contenir ou autre chose encore, j'ai fait comme je sentais,.

A vous par conséquent d'affiner les critères requêtes "RELEVE", "WEB", "MAILING" ou nous préciser les choses.

Cordialement
 

Pièces jointes

  • loiC.xlsx
    30.3 KB · Affichages: 4

job75

XLDnaute Barbatruc
Bonjour ratsavong, Hasco,

Voyez le fichier .xlsm joint et cette macro dans ThisWorkbook qui utilise le filtre avancé :
VB:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim F As Worksheet, liste, i As Variant, critere As Range
Set F = Sheets("Feuil1")
liste = Array("RELEVE", "WEB", "MAILING") 'liste des noms des feuilles
i = Application.Match(Sh.Name, liste, 0)
If IsError(i) Then Exit Sub
Set critere = F.[F1:F2]
Application.ScreenUpdating = False
Sh.UsedRange.Delete xlUp 'RAZ
Select Case i
    Case 1: critere(2) = "=OR(ISNUMBER(SEARCH(""RDC"",A2)),ISNUMBER(SEARCH(""RELEVE"",A2)),ISNUMBER(SEARCH(""RDC"",D2)),ISNUMBER(SEARCH(""RELEVE"",D2)))"
    Case 2: critere(2) = "=OR(ISNUMBER(SEARCH(""RELEVE"",A2)),ISNUMBER(SEARCH(""AFP"",D2)),ISNUMBER(SEARCH(""0000"",D2)))"
    Case 3: critere(2) = "=OR(ISNUMBER(SEARCH(""Mailing"",A2)),ISNUMBER(SEARCH(""Mailing"",D2)))"
End Select
F.UsedRange.Resize(, 4).AdvancedFilter xlFilterCopy, critere, Sh.[A1] 'copie le filtre avancé
critere.ClearContents
End Sub
Elle se déclenche automatiquement quand on active une feuille.

A+
 

Pièces jointes

  • loiC(1).xlsm
    23.2 KB · Affichages: 4

Discussions similaires

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