Analyser hver karakter i en celle i Excel ved hjælp af triaden af ​​indirekte (), række () og midten ()

Indholdsfortegnelse

I dag vil jeg give dig en kraftfuld formelcocktail. Den mindre brugte INDIRECT () og ROW () funktion sammen med MID () funktionen kan skabe en storslået blanding.

Denne triade giver dig mulighed for at komme ind i indholdet i en celle. og analyser hvert tegn separat. Antag f.eks., At du har Excel123 i en celle, og du vil identificere, om den indeholder en numerisk værdi eller ej (hvilket det gør !!). Excel indbyggede formler kan ikke hjælpe dig her, da Excel betragter dette som tekst (Prøv og brug Type () -funktionen til selv at se).

Det, du har brug for her, er en måde at kontrollere hvert tegn for sig og derefter identificere, om det indeholder et tal. Lad os først se på formlen, der kan adskille hvert tegn:

= MIDD (B2, RÆKKE (INDIRECT ("1:" & LEN (B2))), 1)

Her virker dette:

Når du nu har det hele dissekeret, kan du analysere hvert tegn separat.

Bemærk, at denne teknik bedst bruges, når den kombineres med andre formler (som du vil se senere i dette indlæg). Som en enkeltstående teknik kunne den næsten ikke være til nogen nytte. Indirekte () er også en flygtig funktion, så brug forsigtigt. [Lær mere om flygtig formel]

Her er et par eksempler, hvor denne teknik kan være nyttig:

1. Sådan identificeres celler, der indeholder et numerisk tegn:

Antag, at du har en liste som vist herunder, og du vil identificere (eller filtrere) enhver celle, der indeholder et numerisk tegn hvor som helst i cellen

For at gøre dette skal du bruge følgende formel. Det returnerer a Rigtigt hvis en celle indeholder et numerisk tegn, og Falsk hvis det ikke gør det.

= ELLER (ISNUMBER (MIDD (A2, RÆK (INDIRECT (“1:” & LEN (A2))), 1)*1))

Brug Control + Shift + Enter for at indtaste denne formel (i stedet for Enter), da det er en matrixformel.

2. At identificere placeringen af ​​den første forekomst af et tal

For at gøre dette skal du bruge følgende formel. Det returnerer placeringen af ​​den første forekomst af et tal i en celle. Hvis en celle f.eks. Indeholder ProductA1, vender den tilbage 9. Hvis der ikke er noget nummer, vender det tilbage “Ingen numerisk karakter til stede”

= IFERROR (MATCH (1, -ISNUMBER (MID (B3, ROW (INDIRECT (“1:” & LEN (B3))), 1)*1), 0), “No Numeric Character Present”)

Brug Ctrl + Skift + Enter for at indtaste denne formel

Håber dette sparer dig for lidt tid og kræfter. Hvis du finder på en anden måde at bruge denne teknik, så del den også med mig.

wave wave wave wave wave