Innehållsförteckning
Allt du behöver veta om jokertecken på en sida: vad de är, hur du bäst använder dem i Excel och varför jokertecken inte fungerar med siffror.
När du letar efter något men inte är exakt säker på vad det är, är jokertecken en perfekt lösning. Du kan tänka på ett jokertecken som en joker som kan anta vilket värde som helst. Det finns bara tre jokertecken i Excel (asterisk, frågetecken och tilde), men de kan göra så många användbara saker!
Jokertecken i Excel
I Microsoft Excel är ett jokertecken en speciell typ av tecken som kan ersätta vilket annat tecken som helst. När du inte vet ett exakt tecken kan du med andra ord använda ett jokertecken på den platsen.
De två vanliga jokertecknen som Excel känner igen är en asterisk (*) och ett frågetecken (?). En tilde (~) tvingar Excel att behandla dessa tecken som vanliga tecken, inte som jokertecken.
Jokertecken är praktiska i alla situationer när du behöver en partiell matchning. Du kan använda dem som jämförelsekriterier för att filtrera data, för att hitta poster som har en gemensam del eller för att utföra oklara matchningar i formler.
Asterisk som jokertecken
Asterisk (*) är det mest allmänna jokertecknet som kan representera valfritt antal tecken Till exempel:
- ch* - matchar alla ord som börjar på "ch", till exempel Charles , Kontrollera , schack , etc.
- *ch - ersätter alla textsträngar som slutar på "ch", till exempel Mars , tum , hämta , etc.
- *ch* - representerar varje ord som innehåller "ch" i någon position, t.ex. Chad , huvudvärk , arch , etc.
Frågetecken som jokertecken
Frågetecknet (?) står för ett enskilt tecken Det kan hjälpa dig att bli mer specifik när du söker efter en partiell matchning, till exempel:
- ? - matchar alla poster som innehåller ett tecken, t.ex. "a", "1", "-" osv.
- ?? - ersätter två valfria tecken, t.ex. "ab", "11", "a*" osv.
- ???-????? - representerar en sträng som innehåller två grupper av tre tecken som skiljs åt med ett bindestreck, t.ex. ABC-DEF , ABC-123 , 111-222 , etc.
- pri?e - tändstickor pris , stolthet , pris och liknande.
Tilde som jokertecken som nollställare
Tilde (~) placerad före ett jokertecken upphäver effekten av ett jokertecken och förvandlar det till en bokstavlig asterisk (~*), ett bokstavligt frågetecken (~?) eller en bokstavlig tilde (~~):
- *~? - hittar alla poster som slutar med frågetecken, t.ex. Vad? , Finns det någon där? , etc.
- *~** - hittar alla data som innehåller en asterisk, t.ex. *1 , *11* , 1-Mar-2020* , etc. I det här fallet är den första och tredje asterisken jokertecken, medan den andra betecknar ett bokstavligt asterisktecken.
Hitta och ersätta jokertecken i Excel
Användningen av jokertecken med Excels funktion Sök och ersätt är ganska mångsidig. I följande exempel diskuteras några vanliga scenarier och du varnas för ett par anmärkningar.
Hur man söker med jokertecken
Som standard är Hitta och ersätta dialogrutan är konfigurerad för att leta efter de angivna kriterierna var som helst i en cell, inte för att matcha hela cellinnehållet. Om du till exempel använder "AA" som sökkriterium kommer Excel att återge alla poster som innehåller det, t.ex. AA-01 , 01-AA , 01-AA-02 Det fungerar bra i de flesta situationer, men kan under vissa omständigheter vara komplicerat.
I datasetet nedan antar vi att du vill hitta de ID:n som består av fyra tecken separerade med ett bindestreck. Du öppnar alltså Hitta och ersätta (Ctrl + F) , skriv ??-?? i den Hitta vad och tryck på Hitta alla Resultatet ser lite förbryllande ut, eller hur?
Tekniskt sett kan strängar som AAB-01 eller . BB-002 också uppfyller kriterierna eftersom de innehåller en delsträng ??-???. Om du vill utesluta dessa från resultaten klickar du på Alternativ knappen och kontrollera den Matcha hela cellinnehållet Nu begränsar Excel resultaten till endast strängarna ??-???:
Hur man ersätter med jokertecken
Om dina data innehåller några oklara matchningar kan jokertecken hjälpa dig att snabbt hitta och sammanföra dem.
I skärmdumpen nedan kan du se två stavningsvarianter av samma stad. Homel och Gomel Vi vill ersätta båda med en annan version - Homyel . (Och ja, alla tre stavningar av min födelsestad är korrekta och allmänt accepterade :)
Så här gör du för att ersätta partiella matchningar:
- Tryck på Ctrl + H för att öppna Ersätt på fliken Hitta och ersätta dialog.
- I Hitta vad och skriv in jokerteckenuttrycket: ?omel
- I Ersätt med och skriv ersättningstexten: Homyel
- Klicka på Ersätt alla knapp.
Och observera resultaten:
Hur du hittar och ersätter jokertecken
Om du vill hitta ett tecken som Excel känner igen som ett jokertecken, dvs. en bokstavlig asterisk eller ett frågetecken, inkluderar du en tilde (~) i dina sökkriterier. Om du till exempel vill hitta alla poster som innehåller asterisker skriver du ~* i rutan Hitta vad:
Om du vill ersätta asteriskerna med något annat kan du byta till Ersätt och skriv in det tecken som du är intresserad av i fältet Ersätt med Om du vill ta bort alla asterisktecken som hittats lämnar du rutan Ersätt med och klickar på Ersätt alla .
Filtrera data med jokertecken i Excel
Excel wildcards är också mycket användbara när du har en stor kolumn med data och vill filtrera dessa data baserat på ett villkor.
Antag att du vill filtrera de ID:n som börjar med "B" i vårt exempel på datamängd. Gör följande:
- Lägg till filter i rubrikcellerna. Det snabbaste sättet är att trycka på genvägen Ctrl + Shift + L.
- I målkolumnen klickar du på rullgardinsmenyn för filter.
- I Sök på och skriv in dina kriterier, B* i vårt fall.
- Klicka på OK .
Detta kommer omedelbart att filtrera data baserat på dina wildcard-kriterier, som visas nedan:
Wildcards kan också användas med Advanced Filter, vilket kan göra det till ett bra alternativ till reguljära uttryck (även kallade Regexer av teknikgurus) som Excel inte har stöd för. Mer information finns i Excel Avancerat filter med jokertecken.
Excel-formler med jokertecken
Det bör först och främst noteras att det är ett ganska begränsat antal Excel-funktioner som stöder jokertecken. Här är en lista över de mest populära funktionerna med exempel på formler:
AVERAGEIF med jokertecken - hittar genomsnittet (aritmetiskt medelvärde) av de celler som uppfyller det angivna villkoret.
AVERAGEIFS - returnerar medelvärdet av de celler som uppfyller flera kriterier. Precis som AVERAGEIF i exemplet ovan tillåter jokertecken.
COUNTIF med jokertecken - räknar antalet celler baserat på ett kriterium.
COUNTIFS med jokertecken - räknar antalet celler baserat på flera kriterier.
SUMIF med jokertecken - summerar celler med villkor.
SUMIFS - adderar celler med flera kriterier. Precis som SUMIF i exemplet ovan kan du använda jokertecken.
VLOOKUP med jokertecken - utför en vertikal sökning med partiell matchning.
HLOOKUP med jokertecken - gör en horisontell sökning med partiell matchning.
XLOOKUP med jokertecken - utför en sökning med partiell matchning både i en kolumn och en rad.
Formeln MATCH med jokertecken - hittar en partiell matchning och returnerar dess relativa position.
XMATCH med jokertecken - en modern efterföljare till MATCH-funktionen som också stöder jokerteckenmatchning.
SÖKNING med jokertecken - till skillnad från FIND-funktionen, som är känslig för stora bokstäver, förstår SEARCH utan hänsyn till stora bokstäver jokertecken.
Om du behöver göra partiell matchning med andra funktioner som inte har stöd för jokertecken måste du hitta en lösning som Excel IF-formeln för jokertecken.
Följande exempel visar några allmänna tillvägagångssätt för att använda jokertecken i Excel-formler.
Excel COUNTIF jokerteckenformel
Låt oss säga att du vill räkna antalet celler som innehåller texten "AA" i intervallet A2:A12. Det finns tre sätt att göra detta.
Det enklaste är att inkludera jokertecken direkt i kriterier argument:
=COUNTIF(A2:A12, "*AA*")
I praktiken är en sådan "hårdkodning" inte den bästa lösningen, eftersom du måste ändra formeln varje gång om kriterierna ändras vid ett senare tillfälle.
I stället för att skriva in kriterierna i formeln kan du ange dem i en cell, till exempel E1, och sammanfoga cellreferensen med jokertecknen. Din fullständiga formel skulle vara:
=COUNTIF(A2:A12,"*"&E1&"*")
Alternativt kan du ange en jokersträng (*AA* i vårt exempel) i kriteriecellen (E1) och endast inkludera cellreferensen i formeln:
=COUNTIF(A2:A12, E1)
Alla tre formlerna ger samma resultat, så vilken du använder är en fråga om personlig preferens.
Observera att sökningen med jokertecken är inte känslig för stora och små bokstäver , så formeln räknar både stora och små bokstäver, som till exempel AA-01 och aa-01 .
Excel wildcard VLOOKUP-formel
När du behöver leta efter ett värde som inte har en exakt matchning i källdata kan du använda jokertecken för att hitta en partiell matchning.
I det här exemplet ska vi leta upp de ID:n som börjar med vissa tecken och återge deras priser från kolumn B. För att göra det, ange följande unika delar av mål-ID:erna i cellerna D2, D3 och D4 och använd denna formel för att få fram resultaten:
=VLOOKUP(D2& "*", $A$2:$B$12, 2, FALSE)
Formeln ovan går till E1, och tack vare den smarta användningen av relativa och absoluta cellreferenser kopieras den korrekt till cellerna nedan.
Eftersom Excel-funktionen VLOOKUP returnerar den först funna matchningen bör du vara mycket försiktig när du söker med jokertecken. Om ditt uppslagsvärde matchar mer än ett värde i uppslagsintervallet kan du få missvisande resultat.
Excel jokertecken för siffror
Det sägs ibland att jokertecken i Excel bara fungerar för textvärden, inte för siffror. Detta är dock inte helt sant. Med Hitta och ersätta funktionen samt Filter , wildcards fungerar bra för både text och siffror.
Hitta och ersätta med jokertecken
I skärmdumpen nedan använder vi *4* som sökkriterium för att söka efter celler som innehåller siffran 4, och Excel hittar både textsträngar och siffror:
Filtrera med jokertecken
På samma sätt har Excels automatiska filter inga problem med att filtrera tal som innehåller "4":
Varför Excel wildcard inte fungerar med siffror i formler
Wildcards med siffror i formler är en annan historia. Om du använder wildcardtecken tillsammans med siffror (oavsett om du omger siffran med wildcards eller sammanfogar en cellreferens) omvandlas ett numeriskt värde till en textsträng. Excel kan därför inte känna igen en sträng i ett intervall med siffror.
Båda formlerna nedan räknar till exempel antalet strängar som innehåller "4" på ett utmärkt sätt:
=COUNTIF(A2:A12, "*4*" )
=COUNTIF(A2:A12, "*"&E1& "*" )
Men ingen av dem kan identifiera siffran 4 i ett tal:
Hur du får jokertecken att fungera för siffror
Den enklaste lösningen är att konvertera siffror till text (t.ex. genom att använda funktionen Text till kolumner) och sedan göra en vanlig VLOOKUP, COUNTIF, MATCH osv.
Om du till exempel vill få fram antalet celler som börja med siffran i E1, är formeln:
=COUNTIF(B2:B12, E1& "*" )
Om detta tillvägagångssätt inte är praktiskt acceptabelt måste du utarbeta en egen formel för varje enskilt fall. Tyvärr finns det ingen generell lösning :( Nedan finns ett par exempel.
Exempel 1. Excel wildcard-formel för siffror
Det här exemplet visar hur man räknar tal som innehåller en viss siffra. Antag att du vill beräkna hur många tal i intervallet B2:B12 som innehåller "4" i exempeltabellen nedan. Här är formeln du ska använda:
=SUMPRODUCT(--(ISNUMBER(SEARCH("4", B2:B12))))
Hur denna formel fungerar
Här är vad formeln gör när den arbetar inifrån och ut:
Funktionen SEARCH letar efter den angivna siffran i varje cell i intervallet och returnerar dess position, med ett felmeddelande #VALUE om den inte hittas:
{#VALUE!;1;#VALUE!;#VALUE!;#VALUE!;3;#VALUE!;#VALUE!;#VALUE!;1;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
ISNUMBER-funktionen tar det därifrån och ändrar alla siffror till TRUE och fel till FALSE:
{FALSK;SANT;FALSKT;FALSKT;FALSKT;SANT;FALSKT;FALSKT;FALSKT;SANT;FALSKT;FALSKT;FALSKT;FALSKT}
En dubbel unary operator (--) omvandlar TRUE och FALSE till 1 respektive 0:
{0;1;0;0;1;0;0;1;0;0;0}
Slutligen adderar SUMPRODUCT-funktionen 1:orna och returnerar antalet.
Observera: När du använder en liknande formel i dina kalkylblad ska du inte i något fall inkludera "$" eller någon annan valutasymbol i sökfunktionen. Kom ihåg att detta bara är ett "visuellt" valutaformat som tillämpas på cellerna, de underliggande värdena är bara siffror.
Exempel 2. Wildcard-formel för datum
Formeln SUMPRODUCT som diskuteras ovan fungerar utmärkt för siffror men misslyckas för datum. Varför? Eftersom Excel internt lagrar datum som serienummer och formeln skulle behandla dessa siffror, inte de datum som visas i cellerna.
För att övervinna detta hinder kan du använda TEXT-funktionen för att konvertera datum till textsträngar och sedan skicka strängarna till funktionen SÖKNING.
Beroende på vad du vill räkna kan textformatet variera.
Om du vill räkna alla datum i C2:C12 som har "4" i dag, månad eller år, använder du " mmddyyyyyy" :
=SUMPRODUCT(--(ISNUMBER(SEARCH("4",TEXT(C2:C12, "mmddyyyy")))))
För att endast räkna de dagar som innehåller "4" och som ignorerar månader och år, använd " dd" textformat:
=SUMPRODUCT(--(ISNUMBER(SEARCH("4",TEXT(C2:C12, "dd")))))
Så här använder du jokertecken i Excel. Jag hoppas att den här informationen kommer att vara användbar i ditt arbete. Jag tackar dig för att du läste och hoppas att vi ses på vår blogg nästa vecka!
Arbetsbok för övning för nedladdning
Jokertecken i Excel-formler (.xlsx-fil)