Hogyan lehet kivonni az összes részleges egyezést az Excelben?
Ha ki szeretné bontani az összes egyezést, amely egy adott kulcsszót tartalmaz egy oszlopból, és felsorolja azokat egy oszlopban vagy határolójellel elválasztott cellában az alábbi képernyőképen látható módon, hogyan tudná megoldani ezt a feladatot Excelben?
A képlet segítségével függőlegesen vonja ki az összes részegyezést
Kivonja az összes részleges egyezést egyetlen cellába a felhasználói függvény segítségével
A képlet segítségével függőlegesen vonja ki az összes részegyezést
Ha az összes egyezést függőlegesen ki szeretné bontani egy oszlopból egy részszöveg alapján, a következő tömbképlet tehet egy szívességet:
Step1: Kérjük, másolja ki és illessze be az alábbi képletet egy üres cellába, ahová az eredményt el szeretné helyezni:
Megjegyzések: A fenti képletben A2: A14 a cellák tartalmazhatják-e azt a kulcsszót, amelyből találatokat szeretne visszaadni, C2 tartalmazza a kulcsszót, E1 a képlet feletti cella.
Step2Ezután nyomja meg a gombot Ctrl + Shift + Enter gombokat egyszerre, hogy megkapja az első eredményt, majd húzza le a kitöltő fogantyút az összes találat megjelenítéséhez, amíg a hibaérték meg nem jelenik. Végül törölje a hibaértékeket, lásd a képernyőképet:
Kivonja az összes részleges egyezést egyetlen cellába a felhasználói függvény segítségével
Ha az összes egyezést egyetlen cellába kell kivonni, és egy adott határolóval elválasztani, akkor lehet, hogy nincs olyan képlet, amely megoldja. Itt kell alkalmaznia az alábbi felhasználói függvényt:
Step1: Nyomja meg Alt + F11 billentyűk megnyitásához Microsoft Visual Basic for Applications ablak.
Step2: Ban,-ben Microsoft Visual Basic for Applications ablakban kattintson betétlap > Modulok, majd másolja be a következő kódot a modulba.
VBA-kód: Kivonja az összes részleges egyezést egyetlen cellába
Function ExtractPartMatch(rngInput As Range, rngSource As Range, Optional sDelimiter As String)
'Updateby ExtendOffice
Dim rng As Range
If sDelimiter = "" Then sDelimiter = ", "
For Each rng In rngSource
If InStr(1, rng.Value, rngInput.Value, vbTextCompare) > 0 Then ExtractPartMatch = ExtractPartMatch & sDelimiter & rng.Value
Next
If Len(ExtractPartMatch) > 0 Then ExtractPartMatch = Mid(ExtractPartMatch, 2, Len(ExtractPartMatch))
End Function
Step3: A kód beillesztése után térjen vissza arra a munkalapra, ahol az eredményt szeretné megtalálni, majd írja be a következő képletet: =ExtractPartMatch(C2,$A$2:$A$14), majd nyomja meg a gombot belép gombot az eredmény eléréséhez az alábbi képernyőképen:
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!