Note: The other languages of the website are Google-translated. Back to English

Kako izvleči prvo / zadnjo / n besedo iz besedilnega niza v Excelu?

Ste že kdaj imeli težave s tem, da morate na delovnem listu iz besedilnega niza izvleči določeno besedo? Na primer, imate naslednji obseg besedilnih nizov, potrebnih za pridobitev prve / zadnje ali n-te besede iz njih, tukaj lahko govorim o nekaterih učinkovitih načinih, kako jih lahko rešite.


Iz besedilnega niza s formulami izvlecite prvo besedo ali priimek

Če morate izvleči prvo besedo s seznama besedilnih nizov, vam bodo v pomoč naslednje formule.

Če želite izvleči prvo besedo, vnesite spodnjo formulo v prazno celico in nato povlecite ročico samodejnega izpolnjevanja te celice v obseg, kot ga potrebujete.

= IF (ISERR (FIND ("", A2)), "", LEVO (A2, FIND ("", A2) -1))

Če želite iz vsake celice izvleči zadnjo besedo, uporabite to formulo:

= IF (ISERR (FIND ("", A2)), "", DESNO (A2, LEN (A2) -FIND ("*", ZAMESTA (A2, "", "*", LEN (A2) -LEN ( NAMESTITEV (A2, "", "")))))))

Zdaj boste videli, da je iz vsake celice izvlečena prva ali zadnja beseda.

Opombe: V zgornjih formulah A2 označuje celico, iz katere boste izvlekli prvo ali zadnjo besedo.

Težko si je zapomniti dolge zapletene formule? Neverjetno orodje vam pomaga izvleči n-to besedo wsamo z več kliki!

Zgoraj dolge formule lahko izvlečejo samo prvo in zadnjo besedo, vendar bo neuporabno izvleči določeno n-to besedo, pravi drugo besedo, šesto besedo itd. Tudi formule lahko razrešite za rešitev problema, formule morajo biti preveč zapleteno, da bi si ga zapomnili in uporabili. Tukaj je priporočljiva funkcija Izvleči n-to besedo v celici programa Kutools za Excel in vam pomaga, da n-to besedo izvlečete čim lažje!


Kutools za Excel - Vključuje več kot 300 priročnih orodij za Excel. Brezplačna preizkusna različica vseh funkcij 30-dan, kreditna kartica ni potrebna! Get It Now

Izvlecite n-to besedo iz besedilnega niza z uporabniško določeno funkcijo

Če želite iz besedilnega niza izvleči drugo, tretjo ali katero koli n-to besedo, lahko ustvarite uporabniško določeno funkcijo, ki se ukvarja z njo.

1. Držite tipko ALT + F11 tipke za odpiranje Okno Microsoft Visual Basic for Applications.

2. Kliknite Vstavi > Moduliin prilepite naslednjo kodo v Moduli okno.

Function FindWord(Source As String, Position As Integer)
'Update 20131202
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. Nato shranite kodo, v tem primeru bom iz niza dobil tretjo besedo, zato vnesite to formulo = iskalna beseda (A2,3) v prazno celico B2 in nato povlecite ročico samodejnega izpolnjevanja te celice v obseg, kot ga potrebujete. Oglejte si posnetek zaslona:

Opomba: V zgornji formuli A2 je celica, iz katere želite izvleči besedo, številka 3 označuje tretjo besedo v nizu, ki jo boste izvlekli, in jih lahko spremenite po potrebi.


Vsako besedo izvlecite iz besedilnega niza in jih navedite vodoravno ali navpično

Ta metoda bo predstavila Kutools za Excel Razdeljene celice pripomoček za ekstrahiranje vsake besede iz besedilnih celic in nato izvlečene besede vodoravno ali navpično navede glede na vaše potrebe.

Kutools za Excel - Vključuje več kot 300 priročnih orodij za Excel. Brezplačna preizkusna različica vseh funkcij 30-dan, kreditna kartica ni potrebna! Brezplačna preizkusna različica zdaj!

1. Izberite celice z besedilnim nizom, iz katerih boste izvlekli njihove besede, in kliknite Kutools > Spoji in razdeli > Razdeljene celice.

2. V začetnem pogovornem oknu Razdeljene celice v razdelku določite vrsto delitve tip odsek, preverite Vesolje možnost v Navedite ločilo in kliknite Ok . Oglejte si posnetek zaslona:

3. Zdaj določite ciljni obseg, v katerega boste izpisali izločene besede, in kliknite OK Gumb

Če ste označili Razdeli na stolpce v zgornjem pogovornem oknu Split Cells se vsaka beseda izvleče iz vsakega besedilnega niza in navede navpično.

Če ste označili Razdeli na vrstice v zgornjem pogovornem oknu Razdeljene celice je vsaka beseda izvlečena iz vsakega besedilnega niza in navedena vodoravno.


Izvlecite n-to besedo iz besedilnega niza v Excelu z neverjetnim orodjem

Če ste namestili Kutools za Excel, lahko s pomočjo njegovega Pomočnika formule> Izvleči n-to besedo v celici hitro izvlečete n-to besedo iz določene celice.

Kutools za Excel - Vključuje več kot 300 priročnih orodij za Excel. Brezplačna preizkusna različica vseh funkcij 30-dan, kreditna kartica ni potrebna! Brezplačna preizkusna različica zdaj!

1. Izberite celico, v katero boste postavili izvlečeno besedo, in kliknite Kutools > Pomočnik za formulo > Pomočnik za formulo da omogočite to funkcijo.

2. V pogovornem oknu Pomočnik formul naredite naslednje:
(1) Izberite Besedilo Iz Vrsta formule spustni seznam;
(2) Kliknite, da označite Izvlecite n-to besedo v celici v Izberite formulo polje s seznamom;
(3) V Celica v polju določite celico, iz katere boste črpali besedo;
(4) V N vnesite številko.

3. kliknite Ok . Po potrebi povlecite ročico za samodejno izpolnjevanje celice formule in kopirajte formulo v druge celice.


Predstavitev: vsako besedo izvlecite iz besedilnega niza in jih navedite vodoravno ali navpično


Kutools za Excel vsebuje več kot 300 priročnih orodij za Excel, ki jih lahko brezplačno preizkusite v 30 dneh. Prenesite in brezplačno preizkusite zdaj!

Sorodni članki:


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča vašo produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2021 in 365. Podpira vse jezike. Enostavna uvedba v vašem podjetju ali organizaciji. 30-dnevna brezplačna preizkusna različica vseh funkcij. 60-dnevna garancija vračila denarja.
zavihek kte 201905

Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
dno pisarniške mize
Komentarji (38)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
Ta vba koda je fantastična, hvala lepa.
Ta komentar je moderator na spletnem mestu minimiziral
Ta uporabniško definirana funkcija je super! Najlepša hvala, ker ste jo delili.
Ta komentar je moderator na spletnem mestu minimiziral
Najlepša hvala! Deloval dobro! :-)
Ta komentar je moderator na spletnem mestu minimiziral
To je bilo SUPER koristno, spraševal sem se, če kdo pozna seznam uporabnih ročno izdelanih funkcij, ki jih je mogoče naložiti, ali pa jih je mogoče kopirati in lepiti, kot je "FindWord", ki bi jih lahko uporabil.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo, spraševal sem se, kaj bi še lahko vstavil v formulo Visual Basic, da bi lahko izvlekel in vejice ali pomišljaje takoj za podatki.. npr. Fortin-
Ta komentar je moderator na spletnem mestu minimiziral
Živjo, to je odlično. Deloval je zelo dobro in zmanjša naš obremenitev, prihrani veliko časa pri tej operaciji. Hvala vsem, ki ste delali na tem in delili...
Ta komentar je moderator na spletnem mestu minimiziral
Dobra. To je delovalo zelo dobro
Ta komentar je moderator na spletnem mestu minimiziral
Živjo, to res prihrani veliko časa. Hvala za delitev Ali lahko kdo tudi predlaga, kako lahko z vba izluščimo besede na obraten način, npr. zadnja beseda je 1, druga od desne proti levi je 2 in tako naprej. To bo zelo cenjeno.
Ta komentar je moderator na spletnem mestu minimiziral
To ne deluje pravilno na izvornem nizu, sestavljenem iz nebesed (kot so imena prodajalcev, ki jim sledijo številke delov)
Ta komentar je moderator na spletnem mestu minimiziral
kako lahko spremenimo pisave za n-to besedo v celici
Ta komentar je moderator na spletnem mestu minimiziral
Zelo cenjeno. Zelo mi je pomagalo.
Ta komentar je moderator na spletnem mestu minimiziral
Živjo, hvala za vaš kos kode. To me je navdihnilo, da sem se malo razširil. V naslednjih vrsticah lahko izberete: zadnjo besedo (0), eno predzadnjo (-1), predzadnjo (-2) itd. Ne glede na število besed. Funkcija FindWord(Source As String, Position As Integer) 'Posodobi 20150504 Dim arr() Kot String arr = VBA.Split(Source, " ") xCount = UBound(arr) Izberite položaj malih in malih črk -xCount na 0 FindWord = arr(xCount + Položaj) Primer 1 Do (xCount + 1) FindWord = arr(Position - 1) Case Else FindWord = "" Konec Izberite Končno funkcijo
Ta komentar je moderator na spletnem mestu minimiziral
Živjo, samo včerajšnji dodatek k kodi. To doda dodatno vrstico za prilagoditev odvečnih presledkov v izvornem nizu: arr = VBA.Split(WorksheetFunction.Trim(Source), " ") lep pozdrav, Allart
Ta komentar je moderator na spletnem mestu minimiziral
Hvala, Alan, to je super, hvala! :)
Ta komentar je moderator na spletnem mestu minimiziral
Najlepša hvala!!
Ta komentar je moderator na spletnem mestu minimiziral
Živjo.. Hvala za vašo kodo, imam stavke seznama in eden od njih je samo 1 beseda, vaša koda pa ne deluje, če ima samo 1 besedo..
Ta komentar je moderator na spletnem mestu minimiziral
Ne morem doseči, da bi koda za prvo besedo delovala, če ima nek moj seznam samo eno besedo v celici. npr. prva beseda ---> prva druga ---> [nič] zadnja beseda ---> zadnja
Ta komentar je moderator na spletnem mestu minimiziral
Poskusite to (glejte moj odgovor zgoraj): Funkcija FindWord(Source As String, Position As Integer) ' dobi 1., 2., zadnjo(0), predzadnjo (-2) itd., besedo iz niza ' Posodobitev 20150505 Dim arr( ) Kot niz arr = VBA.Split(WorksheetFunction.Trim(Source), " ") xCount = UBound(arr) Izberite položaj primera Primer -xCount do 0 FindWord = arr(Position + xCount) Primer 1 do xCount + 1 FindWord = arr (Položaj - 1) Male črke FindWord = "" Končni izbor
Ta komentar je moderator na spletnem mestu minimiziral
Živjo geeks, imam tako celico: 1 ABCD; 2 DEDF; 1 DED#3d; 4 FDWDS; 1 ED In rad bi izvlekel znak po 1. Tako želim imeti rezultat, kot je spodaj: ABCD;DED#3d;ED
Ta komentar je moderator na spletnem mestu minimiziral
Imam 64-bitni Excel 2013 in pogrešam dodatek Morefunc. Na podlagi zgornje kode sem pripravil to zamenjavo za Morefuncovo funkcijo WMID. Hvaležen bi bil, če bi ga lahko pospravil kdo, ki je bolj strokovnjak od mene. Funkcija WMid1(Vir kot niz, izbirni položaj kot celo število, neobvezno število besed kot celo število, neobvezno ločilo kot niz) Dim arr() Kot niz Dim xCount kot celo število Dim wCount kot celo število Dim wNajprej kot celo število Dim wZadnje kot celo število, če je položaj = 0, nato položaj = 1 Če je število besed = 0 Potem je število besed = 1 Če je ločilo = "" Potem ločilo = " " arr = VBA.Split(Trim(Source), Separator) xCount = UBound(arr) + 1 Če je položaj < 1 Potem wFirst = Aplikacija. Max(xCount + Position - WordCount + 1, 0) wLast = xCount + Position Else wFirst = Position - 1 wLast = Application.Min(xCount - 1, Position + WordCount - 2) Konec, če je xCount < 2 Ali Abs(Position) > xCount Potem WMid1 = "" Drugače WMid1 = arr(wFirst) Za wCount = wFirst + 1 Do wLast WMid1 = WMid1 & Separator & arr(wCount) Naslednji konec Če WMid1 = Trim(WMid1) Končna funkcija
Tu še ni objavljenih komentarjev
Obremenitev Več
Pustite vaše komentarje
Objava kot gost
×
Ocenite to objavo:
0   Znaki
Predlagane lokacije

Sledi nam

Copyright © 2009 - www.extendoffice.com. | Vse pravice pridržane. Poganja ga ExtendOffice. | Kazalo
Microsoft in logotip Office sta blagovni znamki ali registrirani blagovni znamki družbe Microsoft Corporation v ZDA in / ali drugih državah.
Zaščiteno s Sectigo SSL