Excel formula: Izvelciet pēdējos divus vārdus no šūnas

Satura rādītājs

Vispārēja formula

=MID(A1,FIND("@",SUBSTITUTE(A1," ","@",LEN(A1)-LEN(SUBSTITUTE(A1," ",""))-1))+1,100)

Kopsavilkums

Lai no šūnas izvilktu pēdējos divus vārdus, varat izmantot formulu, kas izveidota ar vairākām Excel funkcijām, tostarp MID, FIND, SUBSTITUTE un LEN. Parādītajā piemērā formula C5 ir:

=MID(B5,FIND("@",SUBSTITUTE(B5," ","@",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-1))+1,100)

Paskaidrojums

Būtībā šī formula izmanto funkciju MID, lai izvilktu rakstzīmes, sākot ar otro līdz pēdējo atstarpi. Funkcijai MID ir nepieciešami 3 argumenti: teksts, ar kuru strādāt, sākuma pozīcija un izvilkamo rakstzīmju skaits.

Teksts nāk no B slejas, un rakstzīmju skaits var būt jebkurš liels skaitlis, kas nodrošinās pēdējo divu vārdu izvilkšanu. Uzdevums ir noteikt sākuma pozīciju, kas ir tieši aiz otrās līdz pēdējās vietas. Gudrs darbs tiek veikts galvenokārt ar funkciju SUBSTITUTE, kurai ir izvēles arguments, ko sauc par instances numuru. Šī funkcija tiek izmantota, lai aizstātu otro līdz pēdējo atstarpi tekstā ar rakstzīmi "@", kas pēc tam atrodas ar funkciju Atrast.

Strādājot no iekšpuses uz āru, zemāk esošajā fragmentā tiek noskaidrots, cik daudz atstarpju ir tekstā, no kurām atņem 1.

LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-1

Parādītajā piemērā tekstā ir 5 atstarpes, tāpēc iepriekš minētais kods atgriež 4. Šis skaitlis tiek ievadīts ārējā SUBSTITUTE funkcijā kā instances numurs:

SUBSTITUTE(B5," ","@",4)

Tas liek SUBSTITUTE aizstāt ceturto atstarpes rakstzīmi ar "@". @ Izvēle ir patvaļīga. Varat izmantot jebkuru rakstzīmi, kas neparādīsies sākotnējā tekstā.

Pēc tam ATRAST tekstā atrod rakstzīmi "@":

FIND("@","A stitch in time@saves nine")

FIND rezultāts ir 17, kam pievieno 1, lai iegūtu 18. Šī ir sākuma pozīcija, un kā otrais arguments tiek ievadīta funkcija MID. Vienkāršības labad izvilkto rakstzīmju skaits tiek kodēts kā 100. Šis skaitlis ir patvaļīgs un to var pielāgot atbilstoši situācijai.

Izvelciet pēdējos N vārdus no šūnas

Šo formulu var vispārināt, lai izvilktu pēdējos N vārdus no šūnas, aizstājot cietā koda piemēru 1 ar (N-1). Turklāt, ja jūs izvilkat daudz vārdu, iespējams, vēlēsities aizstāt cietā koda argumentu MID, 100, ar lielāku skaitu. Lai garantētu, ka numurs ir pietiekami liels, jūs varat vienkārši izmantot funkciju LEN šādi:

=MID(B5,FIND("@",SUBSTITUTE(B5," ","@",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))-(N-1)))+1,LEN(B5))

Interesanti raksti...