Как да извлечете главни букви или думи, започващи с главна буква, от текстови низове?
Ако имате списък с текстови низове, сега искате да извлечете от клетките само всички главни букви или думите, започващи с главна буква. Как бихте могли да го решите в Excel?
Извличане на главни букви от текстови низове с дефинирана от потребителя функция
Извличайте думи, започващи с главна буква, от текстови низове с дефинирана от потребителя функция
Извличане на главни букви от текстови низове с дефинирана от потребителя функция
Следният VBA код може да ви помогне да извлечете само главните букви от клетките, моля, направете следното:
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. Кликнете Поставете > Модулии поставете следния код в Модули Window.
VBA код: Извличане само на главни букви от текстови низове:
Функция ExtractCap(Txt като низ) като низ 'Updateby Extendoffice Application.Volatile Dim xRegEx As Object Set xRegEx = CreateObject("VBSCRIPT.REGEXP") xRegEx.Pattern = "[^AZ]" xRegEx.Global = True ExtractCap = xRegEx.Replace(Txt, "") Set xRegEx = Nothing End Function
3. След това запазете кода и затворете този код, върнете се в работния лист, въведете тази формула: =EXTRACTCAP(A2) в празна клетка, където искате да изведете резултата, и след това плъзнете манипулатора за попълване надолу към клетките, към които искате да приложите тази формула, и всички главни букви са извлечени наведнъж, вижте екранната снимка:
Извличайте думи, започващи с главна буква, от текстови низове с дефинирана от потребителя функция
Ако трябва да извлечете думите, които започват с главна буква от текстови низове, следният VBA код може да ви помогне.
1. Задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.
2. Щракнете Поставете > Модули, след това копирайте и поставете следния код в Модули Window.
VBA код: Извличане на думи, започващи с главна буква:
Функция StrExtract(Str като низ) като низ 'Updateby Extendoffice Application.Volatile Dim xStrList As Variant Dim xRet As String Dim I As Long If Len(Str) = 0 Then Exit Function xStrList = Split(Str, " ") If UBound(xStrList) >= 0 Then For I = 0 To UBound( xStrList) If xStrList(I) = StrConv(xStrList(I), vbProperCase) Then xRet = xRet & xStrList(I) & " " End If Next StrExtract = Left(xRet, Len(xRet) - 1) End If End Функция
3. След това запазете кода и затворете прозореца с код, въведете тази формула: =StrExtract(A2) в празна клетка до вашите данни, след това плъзнете манипулатора за попълване надолу до клетките, които искате да получите резултата, и всички думи, които започват с главна буква, се извличат, вижте екранната снимка:
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!