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

Kako hitro izvleči ime datoteke iz celotne poti v Excelu?

Če imate delovni list, ki vsebuje seznam poti datotek, bi zdaj radi iz vsake poti izvlekli samo ime datoteke (desni del končne poševnice), kot je prikazano na naslednjih prikazanih zaslonih. Ali obstajajo kakšni hitri triki za reševanje te naloge?

Izvlecite ime datoteke iz celotne poti s formulo v Excelu
Izvlecite ime datoteke iz celotne poti z uporabniško določeno funkcijo
Izvlecite ime datoteke iz celotne poti s kodo VBA


Izvlecite ime datoteke iz celotne poti s formulo v Excelu

V Excelu lahko s spodnjo formulo hitro izvlečete samo ime datoteke iz celotne poti.

Izberite prazno celico, vanjo vnesite spodnjo formulo in nato pritisnite Vnesite ključ.

=MID(A1,FIND("*",SUBSTITUTE(A1,"\","*",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,LEN(A1))

nasveti: A1 je celica, iz katere želite izvleči ime datoteke), pritisnite gumb Enter in nato povlecite ročico za polnjenje, da zapolnite želeni obseg. Po tem se ime datoteke izvleče iz vsake celice.

doc izvleček ime1


Izvlecite ime datoteke iz celotne poti z uporabniško določeno funkcijo

Z naslednjo uporabniško določeno funkcijo lahko ime datoteke dobite enostavno in hitro.

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

2. Kliknite Vstavi > Moduliin prilepite naslednjo kodo v Okno modula.

Function FunctionGetFileName(FullPath As String) As String
'Update 20140210
Dim splitList As Variant
splitList = VBA.Split(FullPath, "\")
FunctionGetFileName = splitList(UBound(splitList, 1))
End Function

3. Pritisnite druga + Q tipke za zapiranje Microsoft Visual Basic za aplikacije okno in se vrnite na delovni list. V prazno celico, na primer B1, vnesite vanjo spodnjo formulo in pritisnite tipko Vnesite ključ.

=FunctionGetFileName(A1)

doc-izvleček-imen datotek1

Nato znova izberite celico B1, povlecite ročico za polnjenje v obseg, za katerega želite uporabiti to formulo, in vsa imena datotek so bila ekstrahirana iz celotnih poti kot naslednji rezultat:

doc-izvleček-imen datotek1


Izvlecite ime datoteke iz celotne poti s kodo VBA

Poleg uporabniško določene funkcije vam pri pridobivanju imen datotek lahko pomaga tudi koda VBA. Naredite to:

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

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

Sub GetFileName()
'Update 20140210
Dim Rng As Range
Dim WorkRng As Range
Dim splitList As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    splitList = VBA.Split(Rng.Value, "\")
    Rng.Value = splitList(UBound(splitList, 1))
Next
End Sub

3. Nato pritisnite F5 tipko za zagon te kode in izberite obseg, iz katerega želite ekstrahirati ime datoteke, glejte posnetek zaslona:

doc-izvleček-imen datotek1

4. In nato kliknite OK, so imena datotek izvlečena iz izbora, kot sledi:

Opombe: S to kodo VBA bodo izvirni podatki uničeni, zato jo morate kopirati, preden uporabite to kodo.


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 (2)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
Formula dvigne #VALUE! napaka, če ima izvorna celica samo ime datoteke za začetek. Vdelava celotne formule v funkcijo IFERROR reši to težavo, npr. =IFERROR( ,A1)
Ta komentar je moderator na spletnem mestu minimiziral
Zelo uporabna funkcija. Ali obstaja način za spreminjanje skripta, tako da najde ime datoteke, če ima pot \ ali / poševnice?

Imam preglednico z različnimi hiperpovezavami, kjer so osnovne poti bodisi \ ali / (poševnica nazaj ali naprej poševnica) ločena - mislim, da je to zato, ker so bile nekatere povezave do datotek narejene tako kot prvotno zaznamki v Wordu ali do datotek na internem strežnik za dokumente. Ali morda zato, ker so nekatere povezave poti narejene z absolutnimi in relativnimi povezavami poti?

npr.

../../../../Documents/2ndQuarter/2019/standardcost_widget12345.pdf
or
\fileserver\factory23\Operations\Parts_Mgt\Documents\2ndQuarter\2019\standardcost_widget12345.pdf


Ko sem zagnal funkcijo getfilename, je dobila vsa imena datotek, ki so bila na poteh z \ med imeniki ali mapami, vendar so bile povezave s poševnico / vrnjene takšne, kot so.
Spremenil in dodal sem drugo funkcijo, ki je bila podobna, vendar sem zamenjal "\" v vrstici 4 z "/" in jo poimenoval forwardslashgetfilename in jo zagnal v ločenem stolpcu, potem ko zaženem prvo funkcijo.

Izvajanje ene funkcije za drugo ni težko, vendar me je zanimalo, ali lahko razširite kodo v operaciji splitList v 4. vrstici tako, da vključuje tako "\" kot "/". Nisem programer VBA, vendar sem poskusil splitList = VBA.Split(FullPath, "\" ali "/") in ni šlo.

Misli? Predvidevam, da gre za nekakšno preprosto sintakso - na tej točki preprosto nimam pojma ... vendar bom začel brskati po spletu ...

Tks!
Tu še ni objavljenih komentarjev
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