Excel – Comment puis-je filterr par «mot contenu»?

J'ai des données dans le format suivant:

entrez la description de l'image ici

Je voudrais filterr ou faire pivoter le filter par chaque mot unique de la list. Je sais comment récupérer une list de mots uniques, ainsi:

entrez la description de l'image ici

donc j'ai ces données. Mais comment puis-je filterr par toutes ces valeurs. Je veux voir un rapport de toute la popularité et le prix résumés pour chacun de ces mots. Cela implique évidemment le chevauchement, car datatables de «pièces de vélo» affecteraient les numéros de vélo et de pièces. Pensées? 🙂

Pour répondre à votre question ultime, utilisez une formule =SUMIF .

Pour que tout soit automatisé, utilisez VBA avec une combinaison de text à colonnes, supprimez les duplicates et la formule =SUMIF .

J'ai pu créer les résultats souhaités avec ce qui suit, bien que l'obtention d'une sum de Popularité semble étrange …

 Sub test1() Application.ScreenUpdating = False Dim lRow As Integer Dim sRange As Range lRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "A").End(xlUp).Row Columns("F:H").ClearContents Range("A2:A" & lRow).Select Selection.Copy Range("F2").Select ActiveSheet.Paste Columns("F:F").Select Application.CutCopyMode = False Selection.TextToColumns Destination:=Range("F1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _ Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _ :=" ", FieldInfo:=Array(Array(1, 1), Array(2, 1)), TrailingMinusNumbers:=True Set sRange = Range("G1") sRange.Select While Selection.End(xlDown).Value <> "" sRange.Offset(1, 0).Select Range(ActiveCell, ActiveCell.Offset(lRow - 1, 0)).Select Selection.Cut Range("F2").Select Selection.End(xlDown).Select Selection.Offset(1, 0).Select ActiveSheet.Paste Set sRange = sRange.Offset(0, 1) sRange.Select Wend lRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "F").End(xlUp).Row Columns("F:F").Select ActiveSheet.Range("$F$1:$F$" & lRow).RemoveDuplicates Columns:=1, Header:=xlNo lRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, "F").End(xlUp).Row Range("F2").Select ActiveCell.Offset(0, 1).Value = "=SUMIF($A:$A,""*""&$F2&""*"",$B:$B)" ActiveCell.Offset(0, 1).Style = "Percent" ActiveCell.Offset(0, 2).Value = "=SUMIF($A:$A,""*""&$F2&""*"",$C:$C)" ActiveCell.Offset(0, 2).Style = "Currency" Range(ActiveCell.Offset(0, 1), ActiveCell.Offset(lRow - 2, 2)).FillDown Range("F1").Value = Range("A1").Value Range("G1").Value = Range("B1").Value Range("H1").Value = Range("C1").Value Range("A1").Select Application.ScreenUpdating = True End Sub