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

Cum se găsește a n-a apariție (poziție) a unui caracter în șirul de text în Excel?

De exemplu, există o frază lungă în celula A1, consultați următoarea captură de ecran. Și acum trebuie să găsiți a 3-a apariție sau poziția caracterului „c” din șirul de text din celula A1. Desigur, puteți număra personajele unul câte unul și puteți obține rezultatul exact al poziției. Cu toate acestea, aici vom introduce câteva sfaturi ușoare pentru a găsi a n-a apariție sau poziția caracterului specific din șirul de text dintr-o celulă.


Găsiți a n-a apariție (poziție) a unui caracter într-o celulă cu formula Găsiți

Există două formule de căutare care vă pot ajuta să găsiți rapid a n-a apariție sau poziția caracterului specific din șirul de text dintr-o celulă.

Următoarea formulă vă va arăta cum să găsiți a treia apariție a „c” în celula A3.

Găsiți Formula 1

Într-o celulă goală, introduceți formula = FIND („c”, A1, FIND („c”, A1) +2).

doc-find-a-poziția-a-șirului-text2

Și apoi apăsați pe Intrați cheie. A fost afișată poziția celei de-a treia litere „c”.

notițe: Puteți schimba 2 în formulă pe baza nevoilor dvs. De exemplu, dacă doriți să găsiți a patra poziție a "c", puteți schimba 2 la 3. Și dacă doriți să găsiți prima poziție a "c", trebuie să schimbați 2 la 0.

Găsiți formula 2

Într-o celulă goală, introduceți formula = FIND (CHAR (1), SUBSTITUT (A1, "c", CHAR (1), 3)), și apăsați Intrați cheie.

notițe: „3” din formulă înseamnă al treilea „c”, îl puteți modifica în funcție de nevoile dvs.


Numărați de câte ori apare un cuvânt într-o celulă Excel

Dacă un cuvânt apare de mai multe ori într-o celulă care trebuia numărat, de obicei, le puteți număra unul câte unul. Dar dacă cuvântul apare de sute de ori, numărarea manuală este dificilă. Numărați de câte ori apare un cuvânt funcția în Kutools pentru Excel's Formula Helper grupul poate calcula rapid numărul de apariții ale unui cuvânt într-o celulă. Probă gratuită cu funcții complete în 30 zile!
 
Kutools pentru Excel: cu peste 300 de programe de completare Excel la îndemână, puteți încerca gratuit fără limitare în 30 zile.

> Găsiți a n-a apariție (poziție) a unui personaj într-o celulă cu VBA

De fapt, puteți aplica macrocomanda VB pentru a găsi cu ușurință a n-a apariție sau poziția unui caracter specific într-o singură celulă.

Pasul 1: Țineți apăsat butonul ALT + F11 tastele și deschide fișierul Microsoft Visual Basic pentru aplicații fereastră.

Pasul 2: Faceți clic pe Insera > Moduleși lipiți următoarea macro în fereastra modulului.

VBA: Găsiți poziția a n-a a unui charater.

Function FindN(sFindWhat As String, _
sInputString As String, N As Integer) As Integer
Dim J As Integer
Application.Volatile
FindN = 0
For J = 1 To N
FindN = InStr(FindN + 1, sInputString, sFindWhat)
If FindN = 0 Then Exit For
Next
End Function

Pasul 3: Acum, dacă doriți să găsiți exact apariția poziției celui de-al treilea „c” în celula A1, vă rugăm să introduceți formula lui = FindN ("c", A1,3)și apăsați tasta Intrați cheie. Apoi va returna poziția exactă în celula specifică simultan.


Găsiți a noua apariție (poziție) a unui caracter într-o celulă cu Kutools pentru Excel

Dacă nu vă place nici formula, nici VBA, puteți încerca un instrument la îndemână - Kutools pentru Excel, Cu său Formulă grupuri, puteți găsi un utilitar - Găsiți a n-a apariție a unui personaj pentru a reveni rapid a n-a poziție a unui personaj într-o celulă.

Kutools pentru Excel, cu mai mult de 300 funcții la îndemână, vă face munca mai ușoară. 

După instalare gratuită Kutools pentru Excel, faceți următoarele:

1. Selectați o celulă pe care doriți să o returnați și faceți clic Kutools > Formula Helper > Formula Helper . Vedeți captura de ecran:

2. Apoi în popping Formula Helper dialog, procedați după cum urmează:

1) Selectați Căutare din lista derulantă a Tipul formulei secțiune;

2) Alegeți Găsiți unde apare personajul al N-lea într-un șir in Alegeți o formulă secțiune;

3) Selectați celula care conține șirul pe care îl utilizați, apoi tastați caracterul specificat și a n-a apariție în casetele de text din Argumente de intrare secţiune.

3. clic Ok. Și veți obține poziția apariției a n-a unui caracter într-un șir.

 


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab

 

Comentarii (28)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Găsiți Formula 1 nu va funcționa. Al treilea parametru al funcției Find este indexul de unde ar trebui să înceapă căutarea (ca în: primele x caractere ale șirului sunt ignorate). adică dacă un șir conține litera c la indicii 1, 5 și 10, rezultatele sunt următoarele: =FIND("c",A1,1) va găsi primul c =FIND("c",A1,2) până la = FIND("c",A1,5) va găsi al doilea c =FIND("c",A1,6) până la =FIND("c",A1,10) va găsi al treilea c. nimic de mai sus nu va găsi nimic.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Vă mulțumesc că ați aflat această greșeală, îmi pare rău că formula1 este greșită, formula corectă ar trebui să fie = FIND („c”, A1, FIND („c”, A1) +2) ,iar dacă doriți să găsiți prima literă „c”, trebuie doar să schimbați 2 la 0.
Acest comentariu a fost redus la minimum de moderatorul de pe site
După cum indică DdW, „+2” sau „+0” sau ce-ai-tu este o poziție de caracter „codificată”; ar trebui să știi deja unde este „c”, pentru a-l găsi. Formula 2 este perfectă, totuși: ÎNLOCUIȚI a n-a instanță a șirului dvs. țintă cu un caracter unic care altfel nu va apărea în restul textului, apoi GĂSEȚI acel caracter unic.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Sunt capabil să găsesc a doua instanță, dar ce zici de a 3-a, a 4-a și a 'n'-a. Nu pot obține a treia instanță (precum și a patra). Am date care conțin 3 până la 4 de instanțe. si ce ar trebui sa fac?
Acest comentariu a fost redus la minimum de moderatorul de pe site
sanjeev, așa cum am spus acum doi ani, utilizați Formula 2: =FIND(CHAR(1),SUBSTITUTE("LOOK_IN","LOOK_FOR",CHAR(1),INST_NUM)) Unde LOOK_IN este șirul (sau celula) pe care îl aveți" caută în; LOOK_FOR este șirul pe care îl căutați; iar INST_NUM este instanța întreagă a LOOK_FOR pe care doriți să o identificați. Prin urmare, =FIND(CHAR(1),SUBSTITUTE("HELLO WORLD","L",CHAR(1),3) va returna 10 (poziția celui de-al treilea "L").
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dragi toți, vreau să selectez un șir de particule dintr-o celulă Exemplu:- Numele meu este Mohit, vreau să returnez orice valoare Ca mohit, este, Nume, Folosesc o funcție. există sau nu vreo funcție
Acest comentariu a fost redus la minimum de moderatorul de pe site
Cred că nu există o funcție specifică pentru asta, deoarece Excel nu este construit pentru a gestiona liste de valori într-o singură celulă. Puteți construi singur funcția combinând funcțiile menționate mai sus cu LEFT() și RIGHT(). Sau puteți folosi VBscripting, desigur.
Acest comentariu a fost redus la minimum de moderatorul de pe site
După ce am jucat ceva, am găsit următoarele pentru a găsi a treia instanță a lui X și a returna numărul poziției. =FIND("X",A1,(FIND ("X",A1,FIND("X",A1,1)+1))+1) Modulul VBA primește totuși votul meu. Mult mai ușor de reținut
Acest comentariu a fost redus la minimum de moderatorul de pe site
Sigur, dar ai putea cuibărește formule în parametrul „număr de instanță” pe termen nelimitat. Formula 2 înlătură VBA, ceea ce o face cea mai bună soluție completă.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Try this: =INDEX(SMALL(IF(MID(A1,MATCH(ROW(INDIRECT(1&":"&LEN(A1))),ROW(INDIRECT(1&":"&LEN(A1))),0),1)="c",MATCH(ROW(INDIRECT(1&":"&LEN(A1))),ROW(INDIRECT(1&":"&LEN(A1))),0),""),MATCH(ROW(INDIRECT(1&":"&LEN(A1)-LEN(SUBSTITUTE(A1,"c","")))),ROW(INDIRECT(1&":"&LEN(A1)-LEN(SUBSTITUTE(A1,"c","")))),0)),2) unde „c” este caracterul necesar și 2 este pozitia. Rețineți că aceasta este o formulă matrice.
Acest comentariu a fost redus la minimum de moderatorul de pe site
this is simpler: =INDEX(SMALL(IF(MID(A1,ROW(INDIRECT(1&":"&LEN(A1))),1)="c",ROW(INDIRECT(1&":"&LEN(A1))),""),ROW(INDIRECT(1&":"&LEN(A1)-LEN(SUBSTITUTE(A1,"c",""))))),2)
Acest comentariu a fost redus la minimum de moderatorul de pe site
Salutare tuturor, am un text într-o celulă Excel „23 floyd lane, longville,KN 14564” Am nevoie de o funcție pentru a extrage doar „longville” Mulțumesc
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dacă trebuie să utilizați o funcție, încercați: =TRIM(MID(A1,SEARCH(",",A1)+1,SEARCH("!@#",SUBSTITUTE(A1,",","!@#",2 ))-SEARCH(",",A1)-1)) În caz contrar, ați putea lua în considerare Date > Text to Columns > Delimited (folosind o virgulă ca separator).
Acest comentariu a fost redus la minimum de moderatorul de pe site
Formula 1 nu funcționează pe a patra, a cincea, a șasea etc. așa că (+3,4,5) va afișa întotdeauna a treia poziție a literei „c”, care este de 19 secunde, totuși, formula funcționează.
Acest comentariu a fost redus la minimum de moderatorul de pe site
SALUTARE TUTUROR,
Am un text într-o celulă Excel "PRIN TRANSFER-NEFT*HDHC0065431*N053112345624801*K0038331*krishna--"
Am nevoie de o funcție pentru a extrage doar „N053112345624801”
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua tuturor,

Am un text într-o celulă Excel "PRIN TRANSFER-NEFT*HDFC0000001*N08745987123546*J0032331*KUMAR--"

Am nevoie de o funcție pentru a extrage doar „N08745987123546”

mulțumesc
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua, doriți să extrageți numerele după Nu și numărul de numere este fix? Dacă da, puteți utiliza Kutools pentru funcția de extragere a textului Exccel? tastați Nu????pentru a extrage.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Prima formulă este complet inutilă și greșită, dar funcționează corect pentru acest exemplu, deoarece primul și al doilea „c” sunt adiacente. Formula corectă este:


Pentru a doua apariție -
= FIND („c”, A1, FIND („c”, A1) +1)

Pentru a treia apariție -
=FIND("c",A1,FIND("c",A1,FIND("c",A1)+1)+1) și așa mai departe...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Prima formulă funcționează corect în versiunea mea, în notă a explicat cum să găsești al treilea, al patrulea sau al n-a „c”.

Notă: Puteți modifica valoarea 2 din formulă în funcție de nevoile dvs. De exemplu, dacă doriți să găsiți a patra poziție a lui "c", puteți schimba 2 cu 3. Și dacă doriți să găsiți prima poziție a lui "c", trebuie să schimbați 2 cu 0.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încercați să aflați poziția celui de-al doilea c cu prima propoziție a comentariului meu de mai sus ca șir folosind prima formulă. Vei afla cât de corect este!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Total de acord. +2, sau +3 etc..... depinde în întregime de distanța dintre aparițiile n și (n+1) ale lui "c". Astfel, ar trebui să ajustați manual pentru fiecare celulă dacă ați încerca să copiați această formulă într-o coloană, de exemplu. În esență, același lucru cu numărarea manuală.


Ex. Să încercăm să găsim a patra apariție a lui „c” în celula A4 folosind formula furnizată. Conform articolului, ar trebui să folosim +1 în funcția noastră imbricată FIND pentru a găsi a patra apariție.


Text în celula A1:

"cabin car abc cole cube"

Numărând manual, a patra apariție este „c” din cole în poziția caracterului 4.


= FIND („c”, A1, FIND („c”, A1) +3)

Funcția imbricată, FIND("c",A1) va găsi prima apariție a lui "c" în poziția 1.

Prin urmare,

FIND("c",A1)+3 = 1+3 = 4

Conectând asta înapoi în formula noastră,

=FIND("c",A1,FIND("c",A1)+3) = FIND("c",A1,1+3) = FIND("c",A1,4)

Această nouă formulă va căuta prima apariție a lui „c” începând de la poziția caracterului 4. Al patrulea caracter din șir este spațiul imediat după cab.

Prin urmare, formula va găsi „c” în mașină și va returna valoarea 5 pentru formula noastră. După cum știm din numărarea manuală, căutăm 13 ca rezultat.
Acest comentariu a fost redus la minimum de moderatorul de pe site
„Înlocuire” vă permite să găsiți a N-a apariție a unui termen, așa că combinați-o cu „găsiți” după cum urmează (unde 5=a cincea apariție):

= FIND (CHAR (1), SUBSTITUT (A1, "c", CHAR (1), 5))
Acest comentariu a fost redus la minimum de moderatorul de pe site
Acesta este răspunsul corect! Vă rugăm să înlocuiți întregul articol cu ​​această linie de cod...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Excelent! Mă bucur că am derulat în sus pentru a revizui alte comentarii după ce l-am postat pe al meu.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Pentru a gestiona excepția formulei, puteți folosi același cu if și serro
=IF(ISERR(FIND("c",A1,FIND("c",A1)+2)),FIND("c",A1,FIND("c",A1)+0),FIND("c",A1,FIND("c",A1)+2))
Acest comentariu a fost redus la minimum de moderatorul de pe site
Găsiți formula 1 este imperfectă. Va fi de mare ajutor dacă este îndepărtat. Am pierdut mult timp încercând a patra apariție a „a” în „vedanarayanan”. Mulțumesc.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Formula dvs. pentru a găsi a N-a apariție a unui caracter dintr-un șir nu funcționează. Folosind exemplul dvs., adăugarea a 2 la rezultatele găsirii încorporate asigură o poziție de pornire pentru găsirea inițială a unei poziții dincolo de primele două c, dar schimbarea +1 la +2 nu duce la poziția celui de-al 3-lea "c". pur și simplu începe căutarea cu un caracter mai adânc în șir și rezultatul este încă al treilea „c”. Pentru a găsi al 4-lea „c”, căutarea trebuie să înceapă dincolo de poziția celui de-al 3-lea „c”. Aștept cu nerăbdare noua ta soluție.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună David

Da, așa cum ați spus, prima formulă nu funcționează corect, puteți aplica a doua formulă:
=FIND(CHAR(1),SUBSTITUTE(A2,"c",CHAR(1),2))

notițe: Numărul „2” din formulă înseamnă al doilea „c”, dacă doriți să obțineți al treilea, al patrulea „c”, trebuie doar să schimbați numărul 2 la 3,4 după cum aveți nevoie.
Vă rugăm să încercați, sper că vă poate ajuta!
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL