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

Hvordan udpakkes filnavn hurtigt fra fuld sti i Excel?

Hvis du antager, at du har et regneark, der indeholder en liste over filstier, vil du nu kun udtrække filnavnet (den højre del af det sidste tilbageslag) fra hver sti som følgende skærmbilleder vist. Er der hurtige tricks til at tackle denne opgave?

Uddrag filnavn fra fuld sti med formel i Excel
Uddrag filnavnet fra den fulde sti med brugerdefineret funktion
Uddrag filnavn fra fuld sti med VBA-kode


Uddrag filnavn fra fuld sti med formel i Excel

I Excel kan du bruge nedenstående formel til hurtigt kun at udtrække filnavnet fra den fulde sti.

Vælg en tom celle, indtast nedenstående formel i den, og tryk derefter på Indtast nøgle.

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

Tips: A1 er den celle, som du vil udtrække filnavnet fra), og tryk på Enter-knappen, og træk derefter fyldhåndtaget for at udfylde det ønskede område. Derefter ekstraheres filnavnet fra hver celle.

doc ekstrakt navn1


Uddrag filnavnet fra den fulde sti med brugerdefineret funktion

Med den følgende brugerdefinerede funktion kan du få filnavnet nemt og hurtigt.

1. Hold nede ALT + F11 nøgler til at åbne Vinduet Microsoft Visual Basic til applikationer.

2. Klik indsatte > Moduler, og indsæt følgende kode i Modul vindue.

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. Tryk andre + Q taster for at lukke Microsoft Visual Basic til applikationer vindue og gå tilbage til regnearket. I en tom celle, for eksempel B1, skal du indtaste nedenstående formel i den og trykke på Indtast nøgle.

=FunctionGetFileName(A1)

doc-ekstrakt-filnavne1

Vælg derefter celle B1 igen, træk fyldhåndtaget til det område, du vil anvende denne formel, og alle filnavne er blevet uddraget fra de fulde stier som følgende resultat:

doc-ekstrakt-filnavne1


Uddrag filnavn fra fuld sti med VBA-kode

Udover den brugerdefinerede funktion kan en VBA-kode også hjælpe dig med at udtrække filnavne. Gør som dette:

1. Hold nede ALT + F11 nøgler til at åbne Vinduet Microsoft Visual Basic til applikationer.

2. Klik indsatte > Moduler, og indsæt følgende kode i modulvinduet.

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. Tryk derefter på F5 nøgle til at køre denne kode, og vælg det interval, som du vil udtrække filnavnet fra, se skærmbillede:

doc-ekstrakt-filnavne1

4. Og klik derefter på OK, er filnavne trukket ud af markeringen som følger:

Bemærk: Med denne VBA-kode ødelægges de originale data, så du skal kopiere en, før du anvender denne kode.


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2021 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60 dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
officetab bund
Sorter kommentarer efter
Kommentarer (2)
Ingen vurderinger endnu. Vær den første til at bedømme!
Denne kommentar blev minimeret af moderatoren på webstedet
Formlen giver en #VÆRDI! fejl, hvis kildecellen kun har et filnavn til at begynde med.. Indlejring af hele formlen i en IFERROR-funktion løser dette problem, f.eks. =IFERROR( ,A1)
Denne kommentar blev minimeret af moderatoren på webstedet
Meget nyttig funktion. Er der en måde at ændre scriptet, så det finder filnavnet, hvis stien har enten \ eller / skråstreger?

Jeg har et regneark med forskellige hyperlinks, hvor de underliggende stier er enten \ eller / (tilbage skråstreg eller skråstreg frem) adskiller - jeg tror, ​​det er fordi nogle af linkene til filer blev lavet som bogmærker i Word oprindeligt, eller til filer på en intern doc server. Eller måske er det fordi nogle stilinks er lavet med absolutte vs relative stilinks?

f.eks:

../../../../Documents/2ndQuarter/2019/standardcost_widget12345.pdf
or
\filserver\factory23\Operations\Parts_Mgt\Documents\2nd Quarter\2019\standardcost_widget12345.pdf


Da jeg kørte funktionen getfilename, fik den alle filnavne, der var i stier med \ mellem mapper eller mapper, men links med / skråstreger blev returneret som de er.
Jeg ændrede og tilføjede en anden funktion, der lignede, men erstattede "\" i linje 4 med "/" og kaldte den forwardslashgetfilename og køre den i en separat kolonne, efter jeg har kørt den første funktion.

At køre den ene funktion efter den anden er ikke svært, men jeg var spændt på, om du kan udvide koden i splitList operation i linje 4 til at inkludere både "\" eller "/". Jeg er ingen VBA-programmør, men jeg prøvede splitList = VBA.Split(FullPath, "\" eller "/"), og det virkede ikke.

tanker? Jeg går ud fra, at det er en simpel syntaks - jeg har bare ingen anelse på dette tidspunkt... men jeg vil begynde at søge rundt på interwebs...

Tks!
Der er endnu ingen kommentarer her

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL