Բովանդակություն
Պարզ, առաջին հայացքից, ոչ ակնհայտ լուծում ունեցող խնդիր. տեքստի տողից հանել վերջին բառը. Դե, կամ, ընդհանուր դեպքում, վերջին հատվածը, որն առանձնացված է տրված սահմանազատիչ նիշով (բացատ, ստորակետ և այլն): տրված կերպարը և այնուհետև հանիր բոլոր նիշերը նրա աջ կողմում:
Եկեք դիտարկենք ավանդաբար ընտրելու մի քանի եղանակներ՝ բանաձևեր, մակրոներ և Power Query-ի միջոցով:
Մեթոդ 1. Բանաձևեր
Բանաձեւի էությունն ու մեխանիզմը հասկանալն ավելի հեշտ դարձնելու համար սկսենք մի փոքր հեռվից։ Նախ, եկեք ավելացնենք մեր սկզբնական տեքստի բառերի միջև եղած բացերի քանակը, օրինակ, 20 կտորի: Դուք կարող եք դա անել փոխարինելու ֆունկցիայի միջոցով: ՓՈԽԱՐITԱԿ (ՓՈԽԱՐԱԿԻՑ) և տրված նիշը N- անգամ կրկնելու գործառույթը – կրկնություն (REPT):
Այժմ ստացված տեքստի վերջից կտրեցինք 20 նիշ՝ օգտագործելով ֆունկցիան RIGHT (ՃԻՇՏ):
Գնալով տաքանում է, չէ՞: Մնում է հեռացնել լրացուցիչ տարածությունները՝ օգտագործելով ֆունկցիան TRIM- ը (TRIM) և խնդիրը կլուծվի.
Անգլերեն տարբերակում մեր բանաձևը կունենա հետևյալ տեսքը.
=TRIM(RIGHT(ՓՈԽՆԱՐԿՈՒՄ(A1;» «;REPT(» «;20));20))
Հուսով եմ, որ պարզ է, որ սկզբունքորեն անհրաժեշտ չէ տեղադրել ուղիղ 20 բացատ. ցանկացած թիվ կստացվի, քանի դեռ այն ավելի է, քան սկզբնական տեքստի ամենաերկար բառի երկարությունը:
Եվ եթե սկզբնական տեքստը պետք է բաժանվի ոչ թե բացատով, այլ մեկ այլ բաժանարար նիշով (օրինակ՝ ստորակետով), ապա մեր բանաձևը պետք է մի փոքր շտկել.
Մեթոդ 2. Մակրո ֆունկցիա
Տեքստից վերջին բառը կամ հատվածը հանելու խնդիրը կարող է լուծվել նաև մակրոների միջոցով, այն է՝ գրելով հակադարձ որոնման ֆունկցիա Visual Basic-ում, որը կանի այն, ինչ մեզ անհրաժեշտ է. վերջը սկզբին.
Սեղմեք ստեղնաշարի դյուրանցումը ալտ+F11 կամ կոճակ Visual Basic ականջակալ երեվակիչ (մշակող)մակրո խմբագրիչը բացելու համար: Այնուհետև ցանկի միջոցով ավելացրեք նոր մոդուլ Ներդիր – մոդուլ և այնտեղ պատճենեք հետևյալ կոդը.
Function LastWord(txt As String, Optional delim As String = " ", Ընտրովի n As Integer = 1) As String arFragments = Split(txt, delim) LastWord = arFragments(UBound(arFragments) - n + 1) End Function
Այժմ դուք կարող եք պահպանել աշխատանքային գիրքը (մակրո-միացված ձևաչափով) և օգտագործել ստեղծված գործառույթը հետևյալ շարահյուսությամբ.
=Վերջին բառ (txt; delim; n)
որտեղ
- txt – բջիջ՝ սկզբնաղբյուր տեքստով
- զառանցանք - բաժանարար նիշ (կանխադրված - բացատ)
- n – ինչ բառ պետք է հանվի վերջից (լռելյայն՝ առաջինը վերջից)
Հետագայում սկզբնաղբյուր տեքստի ցանկացած փոփոխության դեպքում մեր մակրո ֆունկցիան կվերահաշվարկվի անմիջապես, ինչպես Excel թերթի ցանկացած ստանդարտ ֆունկցիա:
Մեթոդ 3. Power Query
Power հարցում Microsoft-ի անվճար հավելում է Excel-ում տվյալները գրեթե ցանկացած աղբյուրից ներմուծելու և այնուհետև ներբեռնված տվյալները ցանկացած ձևի փոխակերպելու համար: Այս հավելյալի հզորությունն ու սառնությունը այնքան մեծ է, որ Microsoft-ը լռելյայն կերպով ներդրել է իր բոլոր հնարավորությունները Excel 2016-ում: Excel 2010-2013 Power Query-ի համար կարելի է անվճար ներբեռնել այստեղից:
Power Query-ի միջոցով վերջին բառը կամ հատվածը բաժանելու մեր խնդիրը լուծվում է շատ հեշտությամբ:
Նախ, եկեք մեր տվյալների աղյուսակը վերածենք խելացի աղյուսակի՝ օգտագործելով ստեղնաշարի դյուրանցումները: Ctrl+T կամ հրամաններ Գլխավոր – Ձևաչափել որպես աղյուսակ (Տուն — Ձևաչափել որպես աղյուսակ):
Այնուհետև մենք բեռնում ենք ստեղծված «խելացի աղյուսակը» Power Query-ում՝ օգտագործելով հրամանը Սեղանից/տեսականից (Սեղանից/տեսականից) ականջակալ Ամսաթիվ (եթե ունեք Excel 2016) կամ ներդիրում Power հարցում (եթե ունեք Excel 2010-2013):
Հարցման խմբագրիչի պատուհանում, որը բացվում է, ներդիրում Փոխակերպում (Փոխակերպում) ընտրիր թիմ Split Column – Ըստ սահմանազատողի (Պառակտված սյունակ — ըստ սահմանազատողի) և այնուհետև մնում է սահմանել բաժանարար նիշը և ընտրել տարբերակը Աջ սահմանազատողկտրել ոչ բոլոր բառերը, այլ միայն վերջինը.
Սեղմելուց հետո OK վերջին բառը կբաժանվի նոր սյունակում: Առաջին անհարկի սյունակը կարելի է հեռացնել՝ աջ սեղմելով դրա վերնագրի վրա և ընտրելով Հեռացնել (Ջնջել). Կարող եք նաև վերանվանել մնացած սյունակը աղյուսակի վերնագրում:
Արդյունքները կարող են ետ վերբեռնվել թերթիկ՝ օգտագործելով հրամանը Գլխավոր — Փակել և բեռնել — Փակել և բեռնել… (Տուն — Փակել և բեռնել — Փակել և բեռնել…):
Եվ արդյունքում մենք ստանում ենք.
Այսպես՝ էժան և ուրախ, առանց բանաձևերի և մակրոների, գրեթե առանց ստեղնաշարին դիպչելու 🙂
Եթե ապագայում սկզբնական ցուցակը փոխվի, բավական կլինի աջ սեղմել կամ օգտագործել ստեղնաշարի դյուրանցումը Ctrl+ալտ+F5 թարմացնել մեր խնդրանքը:
- Կպչուն տեքստի բաժանում սյունակների
- Տեքստի վերլուծություն և վերլուծություն կանոնավոր արտահայտություններով
- Տեքստից առաջին բառերի դուրսբերում SUBSTITUTE ֆունկցիայով