Excel-formel: Partiell matchning mot siffror med jokertecken -

Innehållsförteckning

Generisk formel

(=MATCH("*"&number&"*",TEXT(range,"0"),0))

Sammanfattning

För att utföra en partiell matchning (jokertecken) mot siffror kan du använda en matrisformel baserad på MATCH-funktionen och TEXT-funktionen. I exemplet som visas är formeln i E6:

(=MATCH("*"&E5&"*",TEXT(B5:B10,"0"),0))

Detta är en matrisformel och måste anges med Control + Shift + Enter, utom i Excel 365.

Förklaring

Excel stöder jokertecken "*" och "?", Och dessa jokertecken kan användas för att utföra partiella matchningar (understrängning) i olika uppslagsformler.

Om du använder jokertecken tillsammans med ett nummer konverterar du dock det numeriska värdet till ett textvärde. Med andra ord "*" & 99 & "*" = "* 99 *" (en textsträng). Och om du försöker hitta ett textvärde i ett antal siffror misslyckas matchningen.

En lösning är att konvertera de numeriska värdena till text i en formel med TEXT-funktionen eller genom att sammanfoga och tömma strängen till intervallet. För att göra detta är formeln i E6:

(=MATCH("*"&E5&"*",TEXT(B5:B10,"0"),0))

Detta är en matrisformel och måste anges med Control + Shift + Enter

Denna formel använder TEXT-funktionen för att omvandla siffrorna i B5: B10 till text med nummerformatet "0". Eftersom vi ger TEXT hela intervallet får vi tillbaka alla värden som konverterats till text i en matris, som returneras direkt till MATCH-funktionen som arrayargument. Med siffrorna konverterade till text kan MATCH-funktionen hitta en partiell matchning som vanligt.

Observera att MATCH måste konfigureras för exakt matchning för att använda jokertecken, genom att ställa det tredje argumentet till noll eller FALSKT.

Ett annat alternativ

Ett annat sätt att omvandla ett tal till text är att sammanfoga en tom sträng (""). Denna formel fungerar på samma sätt som formeln ovan:

=MATCH("*"&E5&"*",B5:B10&"",0)

Intressanta artiklar...