Прескочи на основното съдържание

Урок за Excel – извличане на текст или число по конкретна позиция

Автор: Силувия Последна промяна: 2022-08-18

В много случаи може да се наложи само да извлечете полезното съдържание от изречение или текстов низ в клетка, като извличане на провинцията от адреса, извличане на имейл адреса от изречение, извличане на номера на куриерската сметка от разговор, и така нататък. Този урок стеснява извличането до конкретна позиция в клетка и събира различни методи за подпомагане на извличането на текст или числа от клетка по конкретна позиция в Excel.

Съдържание: [ Крия ]

(Щракнете върху което и да е заглавие в съдържанието по-долу или вдясно, за да отидете до съответната глава.)

Извличане на текст по позиция

Този раздел събира общи позиции, където текстът може да бъде извлечен от клетка, и предоставя съответните методи за обработката им стъпка по стъпка. Можете да прегледате за повече подробности.

1. Извлечете броя знаци отляво или отдясно

За да извлечете броя знаци от лявата или дясната страна на низ, можете да опитате един от методите по-долу.

1.1 Извлечете първите или последните N знака с формули

Да предположим, че имате списък с текстови низове в колона B, както е показано на екранната снимка по-долу, за да извлечете първите 2 знака и последните 2 знака от всеки низ, можете да приложите следните формули.

Извличане на първите N знака от текстов низ

Функцията LEFT може да помогне за лесното извличане на първите N знака от текстов низ в Excel.

Обща формула

=LEFT(text_string,[num_chars])

Аргументи

Текстов_низ: Текстовият низ, който съдържа знаците, които искате да извлечете. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Брой_символи: Указва броя знаци, които искате да извлечете.
Num_chars трябва да е по-голямо или равно на нула;
Ако указаните Num_chars са по-големи от дължината на текстовия низ, той връща целия текст;
Ако Num_chars е пропуснат, се приема, че е 1.

Сега можете да приложите тази формула, за да извлечете първите 2 знака от клетките в колона B.

1. Изберете празна клетка, копирайте или въведете формулата по -долу и натиснете Въведете ключ за получаване на първия резултат. Изберете клетката с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да приложите формулата към други клетки.

=LEFT(B5,2)

Сега първите 2 знака във всяка клетка от диапазон B5:B10 са извлечени.

Извличане на последните N знака от текстов низ

Тук прилагаме функцията RIGHT, за да извлечем последните N знака от текстов низ в Excel.

Обща формула

=RIGHT(text_string,[num_chars])

Аргументи

Текстов_низ: Текстовият низ, който съдържа знаците, които искате да извлечете. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Брой_символи: Указва броя знаци, които искате да извлечете.
- Брой_символи трябва да е по-голямо или равно на нула;
Ако посочените Брой_символи е по-голяма от дължината на текстовия низ, връща целия текст;
Ако The Брой_символи е пропуснато, приема се, че е 1.

Изберете празна клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. След това изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите други резултати.

=RIGHT(B5,2)

1.2 Извлечете първите или последните N знака с невероятен инструмент

Въпреки че формулите по-горе са прости, за да извлечете първите или последните n знака от дълъг списък с текстов низ, все пак трябва да плъзнете манипулатора за автоматично попълване отгоре надолу, което може да отнеме малко време. Тук препоръчва Kutools за ExcelЕ Извличане на текст помощна програма за подпомагане на груповото извличане на първите или последните N знака от списък с текстов низ.

1. Изберете предварително списъка с текстови низове, от който искате да извлечете текст, и щракнете Kutools > Текст > Извличане на текст.

2. При изскачане Извличане на текст диалогов прозорец, трябва да конфигурирате както следва.

2.1) Уверете се, че сте отседнали в Екстракт по местоположение раздел;
2.2) В Обхват поле, избраният диапазон се показва вътре, можете да промените към друг диапазон според вашите нужди;
2.3) В Настроики раздел:
Ако искате да извлечете първите N знака, изберете Първият N знак бутон за избор и след това задайте броя на символите, които ще извлечете в текстовото поле. В този случай въвеждам числото 2;
Ако искате да извлечете последните N знака, изберете Последният N знак бутон за избор и след това задайте броя на символите, които ще извлечете в текстовото поле. В този случай искам да извлека последните 2 знака от текстовия низ, така че въвеждам числото 2 в текстовото поле.
2.4) Щракнете OK. Вижте екранна снимка:

Забележка: За да направите резултата динамичен, когато текстовият низ се промени, можете да проверите Вмъкване като формула кутия.

3. При следващото изскачане Извличане на текст диалогов прозорец, изберете клетка за извеждане на извлечените знаци и след това щракнете OK.

След това посочените първи или последни N знака се извличат групово от избраните клетки.

Кликнете, за да научите повече за тази функция.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.


2. Извличане на текст преди или след определен знак/дума

За да извлечете текст преди или след определен знак или дума, различните сценарии в този раздел ще отговорят на вашите нужди.

2.1 Извличане на текст преди или след първия разделител (знак)

Както е показано на екранната снимка по-долу, за да извлечете текст преди или след първия разделител от всяка клетка в диапазона B4:B10, можете да приложите един от методите по-долу.

2.1.1 Извличане на текст преди първия разделител с формула

Прилагането на формула, базирана на функциите LEFT и FIND, може да помогне за извличане на текст преди първия разделител от клетка. Можете да следвате стъпките по-долу, за да го направите.

Обща формула

=LEFT(text_string,FIND("delimiter",text_string,1)-1)

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете подниза. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Разделител: Първият разделител, който определя кой текст ще бъде извлечен от клетка.

Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на първия резултат. Изберете първата клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите текстовете преди първия разделител на другите клетки.

=LEFT(B5,FIND("-",B5,1)-1)

2.1.2 Извличане на текст след първия разделител с формула

Формулата по-долу помага да се извлече текст след първия разделител от клетка в Excel.

Обща формула

=MID(text_string,FIND("delimiter",text_string)+1,LEN(text_string))

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете подниз. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Разделител: Първият разделител, който определя кой текст ще бъде извлечен от клетка.
Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на първия резултат. Изберете първата клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите другите резултати.

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

2.1.3 Извлечете текст преди или след първия разделител с невероятен инструмент

Тук силно препоръчва Извличане на текст полезност на Kutools за Excel. С тази функция можете лесно да извличате групово текстове преди или след първия разделител от диапазон от клетки.

1. Изберете диапазона от клетки, където искате да извлечете текста, и след това щракнете Kutools > Текст > Извличане на текст.

2. В Извличане на текст диалогов прозорец, трябва да конфигурирате както следва.

2.1) Останете в Екстракт по местоположение раздел;
2.2) В Обхват поле, избраният диапазон се показва вътре, можете да го промените според нуждите си;
2.3) В Настроики раздел:
За да извлечете текст преди първия разделител, изберете преди текста бутон за избор и след това въведете първия разделител в текстовото поле;
За да извлечете текст след първия разделител, изберете след текста бутон за избор и след това въведете първия разделител в текстовото поле.
2.4) Щракнете OK.

Забележка: За да направите резултата динамичен, когато текстовият низ се промени, можете да поставите отметка в квадратчето Вмъкване като формула.

3. След това още един Извличане на текст изскача диалогов прозорец, изберете клетка за извеждане на резултатите и щракнете OK.

След това текстовете преди или след първия разделител се извличат от избраните клетки наведнъж.

За да научите повече за тази функция, моля посетете: Бързо извличане на определен текст от клетки в Excel.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.

2.2 Извличане на текст преди или след последния разделител (знак)

В стъпките по-горе научихме методите за извличане на текст преди или след първия разделител от клетка. Както е показано на екранната снимка по-долу, този раздел ще ви покаже две формули за извличане на текст преди или след последния разделител от клетка. Можете да следвате стъпките по-долу, за да го направите.

2.2.1 Извличане на текст преди последния разделител с формула

За да извлечете текст преди последния разделител от клетка, можете да използвате функциите SEARCH, LEN и SUBSTITUTE вътре във функцията LEFT.

Обща формула

=LEFT(text_string,SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter",""))))-1)

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете подниза. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Разделител: Последният разделител, който определя кой текст ще бъде извлечен от клетка.

Изберете клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да извлечете текстовете от други текстови низове в същата колона.

=LEFT(B5,SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-",""))))-1)

2.2.2 Извличане на текст след последния разделител с формула

След като извлечете текст преди последния разделител от клетка, можете да приложите формулата по-долу, за да извлечете текста след последния разделител, както ви е необходимо.

Обща формула

=RIGHT(text_string,LEN(text_string)-SEARCH("#",SUBSTITUTE(text_string,"delimiter","#",LEN(text_string)-LEN(SUBSTITUTE(text_string,"delimiter","")))))

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете подниза. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
Разделител: Последният разделител, който определя кой текст ще бъде извлечен от клетка.

Изберете клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да извлечете текстовете от други текстови низове в същата колона.

=RIGHT(B5,LEN(B5)-SEARCH("#",SUBSTITUTE(B5,"-","#",LEN(B5)-LEN(SUBSTITUTE(B5,"-","")))))

2.3 Извличане на текст след n-тия знак

Вижте примера по-долу, има списък с текстов низ в диапазона B4:B10, за да извлечете текста след третия знак от всяка клетка, можете да приложите формула, базирана на функцията MID и функцията LEN.

Обща формула

=MID(text_string,nth_char+1,LEN(text_string))

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете подниза. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
nth_char: Число представлява n-тия знак и ще извлечете текста след него.

Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите други резултати.

=MID(B5,3+1,LEN(B5))

2.4 Извличане на n-та дума от текстов низ

Да предположим, че имате списък с текстов низ, както е показано на екранната снимка по-долу, и искате да извлечете само n-тата дума от текстовия низ, този раздел предоставя три метода, за да го направите.

2.4.1 Извличане на n-та дума с формула

Можете да комбинирате функциите TRIM, MID, SUBSTITUTE, REPT и LEN, за да извлечете n-тата дума от текстов низ в клетка.

Обща формула

=TRIM(MID(SUBSTITUTE(text_string," ",REPT(" ",LEN((text_string))), (N-1)*LEN((text_string)+1, LEN((text_string)))

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете n-тата дума. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
N: Число представлява n-тата дума, която ще извлечете от текстовия низ.

В този случай диапазонът B5:B10 съдържа текстовите низове, D5:D10 съдържа числата, представляващи n-тата дума, нека приложим тази формула, за да извлечем n-тата дума от текстов низ.

Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на първия резултат. Изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите n-тата дума от други клетки.

=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (D5-1)*LEN(B5)+1, LEN(B5)))

Забележка: Можете директно да въведете n-то число във формулата, както следва.

=TRIM(MID(SUBSTITUTE(B5," ",REPT(" ",LEN(B5))), (2-1)*LEN(B5)+1, LEN(B5)))

2.4.2 Извлечете n-тата дума с дефинирана от потребителя функция

Освен горната формула, можете също да приложите дефинирана от потребителя функция за извличане на n-та дума от клетка в Excel.

1. Натисни Друг + F11 за да отворите Microsoft Visual Basic за приложения прозорец.

2. В Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модул, и след това копирайте VBA по-долу в прозореца на кода.

VBA код: Извлечете n-тата дума от текстов низ в клетка

Function ExtractTheNthWord(Source As String, Position As Integer)
'Update by Extendoffice 20211202
Dim arr() As String
arr = VBA.Split(Source, " ")
xCount = UBound(arr)
If xCount < 1 Or (Position - 1) > xCount Or Position < 0 Then
    FindWord = ""
Else
    FindWord = arr(Position - 1)
End If
End Function

3. Натисни Друг + Q ключове за затваряне на Microsoft Visual Basic за приложения прозорец.

4. Върнете се в работния лист, съдържащ текстовите низове, от които искате да извлечете n-тата дума. Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на n-тата дума.

=FindWord(B5,D5)

Or

=FindWord(B5,2)

Забележка: във формулата D5 е клетката, която съдържа число, представляващо n-тата дума. Като алтернатива можете директно да замените референтната клетка с число.

5. Изберете клетката с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да извлечете n-тата дума от текстовите низове на други клетки.

2.4.3 Извлечете n-тата дума с невероятен инструмент

Ако не искате да прилагате ръчно формула или дефинирана от потребителя функция, предоставена по-горе, тук препоръчва Kutools за Excel Извлечете n-тата дума в клетката полезност. С тази функция можете лесно да извлечете n-тата дума от текстов низ в клетка само с няколко кликвания.

1. Изберете клетка, за да поставите резултата, и щракнете Kutools > Помощник за формула > Текст > Екстракт n-тата дума в клетката. Вижте екранна снимка:

2. В Помощник за формули диалогов прозорец, трябва да конфигурирате както следва.

2.1) В Изберете списък с формули кутия, Извлечете n-тата дума в клетката опцията е маркирана;
2.2) В Клетка поле, изберете клетка, съдържаща текстовия низ, от който искате да извлечете n-тата дума;
2.3) В N-тото изберете клетка, съдържаща n-то число, или директно въведете число според вашите нужди;
2.4) Щракнете OK.

3. След това n-тата (втората) дума се извлича от текстовия низ в клетка B5 и можете да видите, че едновременно се създава формула. Изберете тази клетка с резултати и плъзнете манипулатора й за автоматично попълване надолу, за да получите n-тата дума от други текстови низове.

Кликнете, за да научите повече за тази функция.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.

2.5 Извличане на текст преди или след n-тото появяване на разделител

Да предположим, че имате списък с текстови низове, както е показано на екранната снимка по-долу. За да извлечете текста преди или след второто появяване на интервал, този раздел предоставя две формули, които да ви помогнат да го направите.

2.5.1 Извличане на текст преди n-тото появяване на разделител

Можете да използвате функцията LEFT заедно с функциите SUBSTITUTE и FIND, за да извлечете текст преди n-тото появяване на разделител от клетка в Excel.

Обща формула

=LEFT(SUBSTITUTE(text_string,"delimiter",CHAR(9),n),FIND(CHAR(9),SUBSTITUTE(text_string,"delimiter",CHAR(9),n),1)-1)

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете текста. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
N: Число представлява n-тото появяване на разделител, който ще извлечете текст преди него.

Изберете клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и я плъзнете надолу, за да получите други резултати в списъка.

=LEFT(SUBSTITUTE(B5," ",CHAR(9),2),FIND(CHAR(9),SUBSTITUTE(B5," ",CHAR(9),2),1)-1)

Забележка: Във формулата B5 е клетката, съдържаща текстовия низ, от който искате да извлечете текста; „ “ тук представлява интервал, а числото 2 представлява второто появяване на интервал. Можете да ги промените според вашите нужди.

2.5.2 Извличане на текст след n-тото появяване на разделител

За да извлечете текст след n-тото появяване на разделител, можете да приложите функцията RIGHT с функциите SUBSTITUTE, LEN и FIND.

Обща формула

=RIGHT(SUBSTITUTE(text_string, "delimiter", CHAR(9), n), LEN(text_string)- FIND(CHAR(9), SUBSTITUTE(text_string, "delimiter", CHAR(9), n), 1) + 1)

Аргументи

Текстов_низ: Текстовият низ, от който искате да извлечете текста. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;
N: Число представлява n-тото появяване на разделител, след което ще извлечете текст.

Сега можете да приложите тази формула, за да извлечете текста след второто появяване на интервала от всяка клетка в диапазон B5:B10, както следва.

Изберете клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и я плъзнете надолу, за да получите други резултати.

=RIGHT(SUBSTITUTE(B5, " ", CHAR(9), 2), LEN(B5)- FIND(CHAR(9), SUBSTITUTE(B5, " ", CHAR(9), 2), 1) + 1)

2.6 Извличане на текст преди или след нов ред

Да предположим, че имате списък с поръчки в колона B и искате да извлечете само частта с датата и частта с номера на продукта от всяка клетка. Можете да използвате формулите на Excel по-долу, за да го направите.

2.6.1 Извличане на текст преди първия нов ред с формула

Както можете да видите на екранната снимка по-горе, частта с датата се намира преди първия прекъсващ ред в клетката. Този раздел ще демонстрира функция LEFT заедно с функцията SEARCH, за да ви помогне да извлечете текста преди първия нов ред в клетка.

Обща формула

=LEFT(cell, SEARCH(CHAR(10), cell)-1)

Аргументи

Cell: Клетката, от която искате да извлечете текста преди първия нов ред.

Изберете празна клетка, копирайте или въведете формулата по-долу в нея и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=LEFT(B5, SEARCH(CHAR(10), B5)-1)

След това можете да видите текста преди първия нов ред във всяка клетка в диапазон B5:B8 да бъде извлечен, както е показано на екранната снимка по-долу.

Забележка: Във формулата CHAR(10) представлява нов ред в Windows.

2.6.2 Извличане на текст след последния нов ред с формула

В предишната стъпка говорихме как да извлечем текст преди първия нов ред в клетка. И тази част ще ви насочи как да извлечете текст след последния нов ред в клетка с различна формула.

Обща формула

=TRIM(RIGHT(SUBSTITUTE(cell,CHAR(10),REPT(" ",200)),200))

Аргументи

Cell: Клетката, от която искате да извлечете текста преди първия нов ред.

Изберете празна клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите формулата към други клетки.

=TRIM(RIGHT(SUBSTITUTE(B5,CHAR(10),REPT(" ",200)),200))

Тогава продуктът №. част от всяка клетка в списъка се извлича, както е показано на екранната снимка по-горе.

Забележка: Във формулата CHAR(10) представлява нов ред в Windows.

2.7 Извличане на текст преди или след дума

В предишните части научихме как да извличаме текст преди или след знак или разделител. Какво трябва да направите, за да извлечете текст преди или след цяла дума? Този раздел ще представи три метода, които да ви помогнат да изпълните тази задача.

2.7.1 Извличане на текст преди определена дума с формула

Следната формула ви помага да извлечете текст преди определена дума в клетка в Excel.

Обща формула

=IFERROR(LEFT(cell,FIND(word,cell)-1),cell)

Аргументи

Cell: Клетката, от която искате да извлечете текста преди определена дума.
Word: Думата, която искате да извлечете целия текст преди нея. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;

Изберете празна клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

В този пример ще извлечем всички текстове преди думата „Excel“, така че директно въвеждаме думата във формулата и я затваряме в двойни кавички. Или можете да посочите клетка, която съдържа думата „Excel“.

=IFERROR(LEFT(B5,FIND("Excel",B5)-1),B5)

Забележки:

1) Тази формула е чувствителна към главни и малки букви.
2) Ако въведената от вас дума има дубликати в същата клетка, формулата извлича текста само след първото срещане.

2.7.2 Извличане на текст след определена дума с формула

За да извлечете текст след определена дума, можете да приложите следната формула, за да го направите.

Обща формула

=TRIM(MID(cell,SEARCH(word,cell)+LEN(word),255))

Аргументи

Cell: Клетката, от която искате да извлечете текста след определена дума.
Word: Думата, която искате да извлечете целия текст след нея. Това може да бъде препратка към клетка или действителен текстов низ, ограден в двойни кавички;

Изберете клетка, въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете клетката с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=TRIM(MID(B5,SEARCH("Excel",B5)+LEN("Excel"),255))

След това можете да видите всички текстове след думата „Excel“ във всяка клетка, които са извлечени, както е показано на екранната снимка по-долу.

Забележки:

1) Тази формула е без значение за главни и малки букви.
2) Ако въведената от вас дума има дубликати в същата клетка, формулата извлича текста само след първото срещане.

2.7.3 Извлечете текст преди или след определена дума с удивителен инструмент

Ако смятате, че използването на формула може да причини много неудобства, тук горещо препоръчваме Извличане на текст полезност на Kutools за Excel. Тази функция помага за автоматизиране на задачата за извличане в Excel само с няколко кликвания.

1. кликване Kutools > Текст > Извличане на текст за да активирате тази функция.

2. В Извличане на текст диалогов прозорец, направете следните настройки.

2.1) Уверете се, че сте в Екстракт по местоположение раздел;
2.2) В Обхват , кликнете върху бутон за избор на диапазон от клетки, където искате да извлечете текстове;
2.3) В Настроики раздел:
За да извлечете всички текстове преди дума, изберете преди текста бутон за избор и след това въведете думата в текстовото поле;
За да извлечете всички текстове след дума, изберете след текста бутон за избор и след това въведете думата в текстовото поле.
2.4) Щракнете върху OK бутон. Вижте екранна снимка:

Забележки: Ако искате да създадете динамични резултати, маркирайте Вмъкване като формула кутия. Тогава резултатите ще се актуализират автоматично, когато данните в диапазона се променят.

3. След това an Извличане на текст се появява диалогов прозорец, трябва да изберете клетка, за да изведете резултата, и след това да щракнете върху OK бутон.

След това текстовете преди или след определена дума във всяка клетка в избрания диапазон се извличат незабавно.

Забележка: Тази функция е чувствителна към главни и малки букви.

Кликнете, за да научите повече за тази функция.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.


3. Извличане между знаци/думи

Ако искате да извлечете текст между определени знаци или думи, опитайте следните методи.

3.1 Извличане на текст между два знака

За извличане на текст между два знака, които могат да бъдат еднакви или различни символи. Този раздел предоставя няколко метода и можете да изберете един от тях според вашите нужди.

3.1.1 Извличане на текст между два еднакви знака с формула

Както е показано на екранната снимка по-долу, има списък с текстови низове в колона B и искате да извлечете числовата част между знаците „/“ от всяка клетка в диапазона, следната формула може да ви направи услуга.

Изберете празна клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете клетката с резултати и след това я плъзнете Автоматично попълване на манипулатора надолу, за да получите резултати от други клетки в списъка.

=SUBSTITUTE(MID(SUBSTITUTE("/" & B5&REPT(" ",6),"/",REPT(",",255)),2*255,255),",","")

След това текстът между два еднакви знака „/“ се извлича от всяка клетка в диапазона. Вижте екранна снимка:

Забележка:

1) B5 е клетката, от която искате да извлечете текст между два еднакви знака;
2) "/” са два еднакви знака, които искате да извлечете текст между тях.
Трябва да промените тези променливи въз основа на вашите собствени данни.

3.1.2 Извличане на текст между два различни знака с формула

След като научите как да извличате текст между два еднакви знака в клетка, тук ще демонстрираме формула за извличане на текст между два различни знака. Както е показано на екранната снимка по-долу, за да извлечете само имейл адреса между „<“ и „>“ от всяка клетка в колона B, можете да направите следното.

Обща формула

=MID(LEFT(cel,FIND("end_char",cell)-1),FIND("start_char",cell)+1,LEN(cell))

Аргументи

Cell: Клетката, от която искате да извлечете текста между два различни знака;
End_char: Крайният характер на двата различни героя;
Start_char: Началният характер на двата различни героя.

Изберете празна клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=MID(LEFT(B5,FIND(">",B5)-1),FIND("<",B5)+1,LEN(B5))

Можете да видите, че само текстът между посочените знаци е извлечен, както е показано на екранната снимка по-горе.

3.1.3 Извлечете текст между два знака с невероятен инструмент

Тук силно препоръчва Извличане на низове между определен текст функция на Kutools за Excel за да ви помогне лесно да извлечете текст между два еднакви или различни знака в клетка в Excel.

1. Изберете празна клетка, за да изведете резултата, и след това щракнете Kutools > Помощник за формула > Помощник за формула.

2. В Помощник за формули диалогов прозорец, направете следните настройки.

2.1) Проверете филтър и след това въведете думата "Екстракт" в текстовото поле;
2.2) В Изберете списък с формули , кликнете върху Извличане на низове между определен текст опция;
2.3) В Въвеждане на аргументи раздел:
в Клетка поле, изберете клетка, където искате да извлечете текста (тук избирам клетка B5);
в Начални символи поле, въведете началния знак на двата различни знака;
в Край поле char(s), въведете крайния знак на двата различни знака.
2.4) Щракнете Ok. Вижте екранна снимка:

3. След това се извлича само текстът между “<” и “>” в клетка B5. Междувременно е създадена формула, можете да изберете тази клетка с резултати и след това да плъзнете манипулатора й за автоматично попълване надолу, за да извлечете текстове от други клетки в същия списък.

Кликнете, за да научите повече за тази функция.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.

3.1.4 Извличане на текст между два знака (включително знаците) по правило

Ако искате да запазите двата знака след извличане, опитайте да приложите правило в функцията за извличане на текст на Kutools за Excel.

1. кликване Kutools > Текст > Извличане на текст.

2. В Извличане на текст диалогов прозорец, направете следните настройки.

2.1) Щракнете върху Извличане по правило раздел;
2.2) В Обхват , кликнете върху бутон, за да изберете диапазона от клетки, където искате да извлечете текста между знаците;
2.3) В Текст кутия, въведете <*>;
Съвет: "<"А">” са знаците, които искате да извлечете текст между тях, * е заместващ знак, който представлява произволен брой знаци. Можете да въведете условието според вашите нужди.
2.4) Щракнете върху Добави бутон за добавяне на условието към Описание на правилото списъчна кутия;
2.5) Щракнете върху Ok бутон. Вижте екранна снимка:

3. Друг Извличане на текст се появи диалогов прозорец, моля, изберете клетка, за да изведете резултата, и след това щракнете върху OK бутон.

След това текстът между определени знаци (включително знаците) се извлича групово от всяка клетка в избрания диапазон.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.

3.2 Извличане на текст между две думи

В допълнение към извличането на текст между два знака, може също да се наложи да извлечете текст между две думи. Например, извлечете всички текстови низове между две думи „KTE“ и „feature“ от всяка клетка в колона B, както е показано на екранната снимка по-долу. Можете да опитате един от следните методи, за да го направите.

3.2.1 Извличане на текст между две думи с формула

Можете да използвате формула, базирана на функцията MID и функцията SEARCH, за да извлечете всички текстови низове между две думи в клетка.

Обща формула

=MID(cell,SEARCH("start_word",cell)+3,SEARCH("end_word",cell)-SEARCH("start_word",cell)-4)

Аргументи

Cell: клетката, от която искате да извлечете всички текстови низове между две думи;
Начална_дума: началната дума на двете думи, които искате да извлечете всички текстови низове след нея;
Дължина1: дължината на знака на началната дума.
Крайна_дума: крайната дума на двете думи, които искате да извлечете всички текстови низове преди нея.
Дължина2: дължината на знака на началната дума плюс 1.

Изберете празна клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=MID(B5,SEARCH("KTE",B5)+3,SEARCH("feature",B5)-SEARCH("KTE",B5)-4)

Забележка: Във формулата числото 3 представлява дължината на знака на думата "KTE"; числото 4 представлява дължината на знака на думата "KTE" плюс 1.

Можете да видите всички текстови низове между посочените две думи са извлечени от всяка клетка в колона B.

3.2.2 Извлечете текст между две думи с невероятен инструмент

За много потребители на Excel формулите може да са трудни за запомняне и работа. Тук, с Извличане на низове между определен текст функция на Kutools за Excel, можете лесно да извлечете текст между две думи само с няколко кликвания.

1. Изберете клетка, за да изведете резултата, и след това щракнете Kutools > Помощник за формула > Помощник за формула.

2. В Помощник за формула диалогов прозорец, трябва да конфигурирате както следва.

2.1) Проверете филтър и след това въведете думата "Екстракт" в текстовото поле;
2.2) В Изберете списък с формули , кликнете върху Извличане на низове между определен текст опция;
2.3) В Въвеждане на аргументи раздел:
в Клетка поле, изберете клетка, където искате да извлечете текста (тук избирам клетка B5);
в Начални символи поле, въведете началната дума на двете думи, които искате да извлечете всички текстови низове след нея;
в Краен знак(а) въведете крайната дума на двете думи, които искате да извлечете всички текстови низове преди нея.
2.4) Щракнете Ok. Вижте екранна снимка:

3. След това се извличат всички текстови низове между две думи „KTE“ и „feature“ в клетка B5. Междувременно е създадена формула, можете да изберете тази клетка с резултати и след това да плъзнете манипулатора й за автоматично попълване надолу, за да извлечете текстове от други клетки в същия списък.

  Ако искате да имате безплатен пробен период (30 дни) на тази помощна програма, моля, щракнете, за да го изтеглитеи след това преминете към прилагане на операцията съгласно горните стъпки.


Извличане на числа по позиция

За списък от буквено-цифрови низове може да има три случая:

  1. Номерът е в началото на текста;
  2. Номерът е в края на текста;
  3. Номерът може да бъде навсякъде в текста.

В този раздел ще предоставим различни методи, които могат да се използват за извличане на числата във всеки случай, споменат по-горе.

1 Извличане на число отляво на низ

Тази част ще въведе формула, която да ви помогне да извлечете само числа, които се появяват преди текст в клетка.

Обща формула

=LEFT(cell, MATCH(FALSE, ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell)+1)), 1) *1), 0) -1)

Аргументи

Cell: Клетката, от която искате да извлечете числото вляво от текстовия низ.

Забележка:

1) Ако използвате Excel 2019 и по-ранна версия, трябва да натиснете Ctrl + Превключване + Въведете клавиши, за да потвърдите тази формула на масива.
2) Ако използвате Excel 365 или Excel 2021, просто потвърдете тази формула с Въведете ключ.

Изберете празна клетка, въведете формулата по-долу и натиснете Ctrl + Превключване + Въведете or Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да получите номера на други клетки.

=LEFT(B5, MATCH(FALSE, ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5)+1)), 1) *1), 0) -1)

Забележки:

1) Ако клетка съдържа само числа, цялото число ще бъде извлечено.
2) Тази формула извлича само числата отляво на текстов низ. Ако има числа в средата или в края на текстовия низ, те ще бъдат игнорирани.

2 Извличане на число отдясно на низ

Както е показано на екранната снимка по-долу, за да извлечете само числата, които се появяват след текст в клетка, опитайте следната формула.

Обща формула

=RIGHT(cell, LEN(cell) - MAX(IF(ISNUMBER(MID(cell, ROW(INDIRECT("1:"&LEN(cell))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(cell))), 0)))

Аргументи

Cell: Клетката, от която искате да извлечете число от началото на текстов низ.

Забележка:

1) Ако използвате Excel 2019 и по-ранна версия, трябва да натиснете Ctrl + Превключване + Въведете клавиши, за да потвърдите тази формула на масива.
2) Ако използвате Excel 365 или Excel 2021, просто потвърдете тази формула с клавиша Enter.

Изберете празна клетка, въведете формулата по-долу и натиснете Ctrl + Превключване + Въведете or Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да получите номера на други клетки.

=RIGHT(B5, LEN(B5) - MAX(IF(ISNUMBER(MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(B5))), 0)))

Забележки:

1) Ако клетка съдържа само числа, цялото число ще бъде извлечено.
2) Тази формула извлича само числата отдясно на текстов низ. Ако има числа в средата или началото на текстовия низ, те ще бъдат игнорирани.

3. Извличане на всички числа от всяка позиция в текстов низ

Методите по-горе помагат да се извлече число само отляво или отдясно на текстов низ. Ако искате да извлечете всички числа от всяко място в текстов низ, тук ви предоставяме три метода, за да го направите.

3.1 Извлечете всички числа от всяко място в низ с формула

Можете да приложите следната формула, за да извлечете всички числа от всяко място в текстов низ в Excel.

1. Изберете празна клетка, копирайте или въведете формулата по -долу и натиснете Въведете ключ за получаване на всички числа от клетка B5.

=SUMPRODUCT(MID(0&B5, LARGE(INDEX(ISNUMBER(--MID(B5, ROW(INDIRECT("1:"&LEN(B5))), 1)) * ROW(INDIRECT("1:"&LEN(B5))), 0), ROW(INDIRECT("1:"&LEN(B5))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(B5)))/10)

2. Изберете клетката с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да получите всички номера на други клетки.

3.2 Извлечете всички числа от всяко място в низ с VBA

Формулата по-горе е твърде дълга и сложна за много потребители на Excel. Всъщност можете да стартирате VBA скрипт, за да автоматизирате задачата в Excel. Можете да направите както следва.

1. Натисни Друг + F11 за да отворите Microsoft Visual Basic за приложения прозорец.

2. В откриването Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модул. След това копирайте VBA по-долу в прозореца с код на модула.

VBA код: Извлечете всички числа от всяко място в текстов низ

Sub ExtrNumbersFromRange()
'Updated by Extendoffice 20220106
    Dim xRg As Range
    Dim xDRg As Range
    Dim xRRg As Range
    Dim nCellLength As Integer
    Dim xNumber As Integer
    Dim strNumber As String
    Dim xTitleId As String
    Dim xI As Integer
    xTitleId = "KutoolsforExcel"
    Set xDRg = Application.InputBox("Please select text strings:", xTitleId, "", Type:=8)
    If TypeName(xDRg) = "Nothing" Then Exit Sub
    Set xRRg = Application.InputBox("Please select output cell:", xTitleId, "", Type:=8)
    If TypeName(xRRg) = "Nothing" Then Exit Sub
    xI = 0
    strNumber = ""
  For Each xRg In xDRg
    xI = xI + 1
    nCellLength = Len(xRg)
    For xNumber = 1 To nCellLength
      If IsNumeric(Mid(xRg, xNumber, 1)) Then
        strNumber = strNumber & Mid(xRg, xNumber, 1)
      End If
    Next xNumber
    xRRg.Item(xI) = strNumber
    strNumber = ""
  Next xRg
End Sub

3. Натисни F5 ключ за изпълнение на кода. В откриването Kutools за Excel изберете диапазона от клетки, където искате да извлечете всички числа от всяка клетка, след което щракнете върху OK бутон.

4. След това още един Kutools за Excel изскача диалогов прозорец. В този диалогов прозорец изберете целева клетка и щракнете OK.

След това всички числа се извличат групово от всяка клетка в избрания диапазон.


4. Извличане на числа след определен текст

Както е показано на екранната снимка по-долу, за да извлечете произволни числа след конкретния текст „No.“, този раздел предоставя два метода, които да ви помогнат да го направите.

4.1 Извличане на числа след определен текст с формула

Можете да приложите следната формула, за да извлечете числа след определен текст в клетка в Excel.

Обща формула:

=LOOKUP(10^6,1*MID(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789",FIND("text"," "&cell&" "))),{2,3,4,5,6}))

Аргументи

Cell: Клетката, от която искате да извлечете числа след определен текст;
Текст: Текстът, който искате да извлечете числа след него.

Изберете празна клетка, копирайте или въведете формулата по-долу и натиснете Въведете ключ за получаване на резултата. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=LOOKUP(10^6,1*MID(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789",FIND("No."," "&B5&" "))),{2,3,4,5,6}))

Забележки:

1) Ако клетка не съдържа конкретния текст, формулата ще върне #N/A.
2) Формулата е чувствителна към главни и малки букви.

4.2 Извличане на числа след определен текст с дефинирана от потребителя функция

Следната дефинирана от потребителя функция също може да помогне за извличане на числа след конкретен текст в клетка. Моля, направете следното.

1. Натисни Друг + F11 за да отворите Microsoft Visual Basic за приложения прозорец.

2. В Microsoft Visual Basic за приложения прозорец, кликнете Поставете > Модул, и след това копирайте VBA кода по-долу в прозореца Module code.

VBA код: извличане на числа след определен текст в клетка

Function GetNumberAfterTheChar(Rng As Range, Char As String)
'Updated by Extendoffice 20220106
Dim xValue As String
Dim xRntString As String
Dim xStart As Integer
Dim xC
    xValue = Rng.Text
    xStart = InStr(1, xValue, Char, vbTextCompare)
    If IsEmpty(xStart) Then
            GetNumberAfterTheChar = ""
            Exit Function
    End If
    If xStart < 1 Then
        GetNumberAfterTheChar = ""
        Exit Function
    End If
    xStart = xStart - 1 + Len(Char)
    If xStart < 1 Then
        GetNumberAfterTheChar = ""
        Exit Function
    End If
    xValue = Mid(xValue, xStart + 1)
    xRntString = ""
    For xI = 1 To Len(xValue)
        xC = Mid(xValue, xI, 1)
        Select Case Asc(xC)
        Case 48 To 57
            xRntString = xRntString & xC
       Case Else
            Exit For
        End Select
    Next
   GetNumberAfterTheChar = xRntString
End Function

3. Натисни Друг + Q ключове за затваряне на Microsoft Visual Basic за приложения прозорец.

4. Изберете клетка, въведете формулата по-долу и натиснете Въведете ключ. Изберете тази клетка с резултати и след това плъзнете манипулатора й за автоматично попълване надолу, за да приложите тази формула към други клетки.

=GetNumberAfterTheChar(B5,"No. ")

Забележки:

1) В тази формула B5 е клетката, в която искате да извлечете числото, а „No. ” е конкретният текст, след който искате да извлечете числото. Можете да ги промените според нуждите си.
2) Ако има разделител между конкретния текст и числото, моля, добавете разделителя в края на текста. В този случай добавих интервал след текста „No.“, който накрая се показва като „No. ”.
3) Този метод е нечувствителен към главни и малки букви;
4) Ако клетка не съдържа конкретния текст, формулата ще върне празен резултат.

Още по темата:

Урок за Excel: Разделяне на клетки с текст, номера и дата (разделяне на няколко колони)
Този урок е разделен на три части: разделени текстови клетки, разделени клетки с числа и разделени клетки с дата. Всяка част предоставя различни примери, за да ви помогне да разберете как да се справите със задачата за разделяне, когато срещнете същия проблем.
Кликнете, за да научите повече...

Excel Добавете текст и число в определена позиция на клетка
В Excel добавянето на текстове или числа към клетките е много обичайна работа. Като добавяне на интервал между имената, добавяне на префикс или суфикс към клетки, добавяне на тирета към социални номера. Тук, в този урок, той изброява почти всички сценарии за добавяне в Excel и предоставя съответните методи за вас.
Кликнете, за да научите повече...

Excel премахва знаци, думи, числа от текстови низове
Да предположим, че имате дълъг списък от текстови низове, които съдържат знаци, числа или други специфични символи. В някои случаи може да се наложи да премахнете някои знаци въз основа на позиция, като например от дясно, ляво или средно от текстовите низове, или да изтриете някои нежелани знаци, числа от списъка с низове. Намирането на решенията едно по едно ще ви причини главоболие, този урок събира всички видове методи за премахване на знаци, думи или числа в Excel.
Кликнете, за да научите повече...

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations