Analizați fiecare caracter dintr-o celulă în Excel folosind triada Indirect (), Rând () și Mid ()

Cuprins

Astăzi am să vă ofer un cocktail de formulă puternic. Funcțiile mai puțin folosite INDIRECT () și ROW () împreună cu funcția MID () pot crea un amestec magnific.

Această triadă vă permite să intrați în conținutul unei celule. și analizează fiecare personaj separat. De exemplu, să presupunem că aveți Excel123 într-o celulă și doriți să identificați dacă conține sau nu o valoare numerică (ceea ce face !!). Formulele Excel încorporate nu vă pot ajuta aici, deoarece Excel consideră acest lucru ca text (Încercați și utilizați funcția Type () pentru a vedea personal).

Aici aveți nevoie de un mod de a verifica fiecare caracter separat și apoi de a identifica dacă conține un număr. Să vedem mai întâi formula care poate separa fiecare caracter:

= MID (B2, ROW (INDIRECT ("1:" & LEN (B2)))), 1)

Aici funcționează:

Acum, când aveți totul disecat, sunteți liber să analizați fiecare personaj separat.

Rețineți că această tehnică este utilizată cel mai bine atunci când este combinată cu alte formule (așa cum veți vedea mai târziu în acest post). Ca tehnică de sine stătătoare, cu greu ar putea fi utilă. De asemenea, Indirect () este o funcție volatilă, așa că utilizați cu precauție. [Aflați mai multe despre formula volatilă]

Iată câteva exemple în care această tehnică ar putea fi utilă:

1. Pentru a identifica celulele care conțin un caracter numeric:

Să presupunem că aveți o listă așa cum se arată mai jos și doriți să identificați (sau să filtrați) orice celulă care conține un caracter numeric oriunde în celulă

Pentru a face acest lucru, utilizați următoarea formulă. Se returnează un Adevărat dacă o celulă conține orice caracter numeric și Fals dacă nu.

= SAU (ISNUMBER (MID (A2, ROW (INDIRECT („1:” & LEN (A2))), 1) * 1))

Utilizați Control + Shift + Enter pentru a introduce această formulă (în loc de Enter), deoarece este o formulă matrice.

2. Pentru a identifica poziția primei apariții a unui număr

Pentru a face acest lucru, utilizați următoarea formulă. Returnează poziția primei apariții a unui număr într-o celulă. De exemplu, dacă o celulă conține ProductA1, aceasta va reveni 9. În cazul în care nu există un număr, acesta revine „Niciun caracter numeric prezent”

= IFERROR (MATCH (1, -ISNUMBER (MID (B3, ROW (INDIRECT („1:” & LEN (B3))), 1) * 1), 0), „Fără caracter numeric prezent”)

Utilizați Control + Shift + Enter pentru a introduce această formulă

Sper că acest lucru vă va economisi ceva timp și efort. Dacă veniți cu orice alt mod de a utiliza această tehnică, împărtășiți-o și mie.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave