Ga naar hoofdinhoud

Hoe de bestandsnaam snel uit het volledige pad in Excel te extraheren?

Stel dat u een werkblad heeft met een lijst met bestandspaden, dan wilt u nu alleen de bestandsnaam (het rechterdeel van de laatste backslash) uit elk pad extraheren, zoals in de volgende schermafbeeldingen. Zijn er snelle trucs om met deze taak om te gaan?

Extraheer de bestandsnaam van het volledige pad met de formule in Excel
Extraheer de bestandsnaam van het volledige pad met de door de gebruiker gedefinieerde functie
Extraheer de bestandsnaam van het volledige pad met VBA-code


Extraheer de bestandsnaam van het volledige pad met de formule in Excel

In Excel kunt u de onderstaande formule gebruiken om snel alleen de bestandsnaam uit het volledige pad te extraheren.

Selecteer een lege cel, voer de onderstaande formule erin in en druk vervolgens op Enter sleutel.

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

Tips: A1 is de cel waaruit u de bestandsnaam wilt extraheren) en druk op de Enter-knop en sleep vervolgens de vulgreep om het gewenste bereik te vullen. Daarna wordt de bestandsnaam uit elke cel gehaald.

doc extract naam1


Extraheer de bestandsnaam van het volledige pad met de door de gebruiker gedefinieerde functie

Met de volgende door de gebruiker gedefinieerde functie kunt u de bestandsnaam eenvoudig en snel verkrijgen.

1. Houd de ALT + F11 toetsen om de te openen Microsoft Visual Basic for Applications-venster.

2. Klikken Invoegen > Moduleen plak de volgende code in het Module Venster.

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. Druk op de anders + Q toetsen om de Microsoft Visual Basic voor toepassingen venster en ga terug naar het werkblad. Voer in een lege cel, bijvoorbeeld B1, de onderstaande formule in en druk op Enter sleutel.

=FunctionGetFileName(A1)

doc-extract-bestandsnamen1

Selecteer vervolgens opnieuw cel B1, sleep de vulgreep naar het bereik waarop u deze formule wilt toepassen en alle bestandsnamen zijn als volgt uit de volledige paden ge毛xtraheerd:

doc-extract-bestandsnamen1


Extraheer de bestandsnaam van het volledige pad met VBA-code

Naast de door de gebruiker gedefinieerde functie, kan een VBA-code u ook helpen bij het extraheren van de bestandsnamen. Doe alstublieft als volgt:

1. Houd de ALT + F11 toetsen om de te openen Microsoft Visual Basic for Applications-venster.

2. Klikken Invoegen > Moduleen plak de volgende code in het modulevenster.

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. Druk vervolgens op F5 sleutel om deze code uit te voeren, en selecteer het bereik waaruit u de bestandsnaam wilt extraheren, zie screenshot:

doc-extract-bestandsnamen1

4. En klik vervolgens op OK, zijn de bestandsnamen als volgt uit de selectie gehaald:

Note: Met deze VBA-code worden de originele gegevens vernietigd, dus u moet er een kopi毛ren voordat u deze code toepast.

Beste Office-productiviteitstools

馃 Kutools AI-assistent: Een revolutie teweegbrengen in de data-analyse op basis van: Intelligente uitvoering   |  Genereer code  |  Aangepaste formules maken  |  Analyseer gegevens en genereer grafieken  |  Roep Kutools-functies aan...
Populaire functies: Zoek, markeer of identificeer duplicaten   |  Verwijder lege rijen   |  Combineer kolommen of cellen zonder gegevens te verliezen   |   Ronde zonder formule ...
Super opzoeken: Meerdere criteria VLookup    VLookup met meerdere waarden  |   VOpzoeken over meerdere bladen   |   Fuzzy opzoeken ....
Geavanceerde vervolgkeuzelijst: Maak snel een vervolgkeuzelijst   |  Afhankelijke vervolgkeuzelijst   |  Multi-select vervolgkeuzelijst ....
Kolom Beheerder: Voeg een specifiek aantal kolommen toe  |  Kolommen verplaatsen  |  Schakel de zichtbaarheidsstatus van verborgen kolommen in  |  Vergelijk bereiken en kolommen ...
Uitgelichte functies: Raster focus   |  Ontwerpweergave   |   Grote formulebalk    Werkmap- en bladbeheer   |  resource Library (Auto-tekst)   |  Datumkiezer   |  Combineer werkbladen   |  Cellen coderen/decoderen    Stuur e-mails per lijst   |  Super filter   |   Speciaal filter (filter vet/cursief/doorhalen...) ...
Top 15 gereedschapsets12 Tekst Tools (toe te voegen tekst, Tekens verwijderen, ...)   |   50+ tabel Types (Gantt Chart, ...)   |   40+ Praktisch Formules (Bereken leeftijd op basis van verjaardag, ...)   |   19 Invoeging Tools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...)   |   12 Camper ombouw Tools (Getallen naar woorden, Currency Conversion, ...)   |   7 Samenvoegen en splitsen Tools (Geavanceerd Combineer rijen, Gespleten cellen, ...)   |   ... en meer

Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar effici毛ntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen.  Klik hier om de functie te krijgen die u het meest nodig heeft...

Omschrijving


Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Very useful function. Is there a way to modify the script so it finds the filename if the path has either \ or / slashes?

I have a spreadsheet with various hyperlinks where the underlying paths are either \ or / (back slash or forward slash) separates - I think its because some of the links to files were done just as bookmarks in Word originally, or to files on an internal doc server. Or maybe its because some path links are made with absolute vs relative path links?

eg:

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


When I ran the getfilename function, it got all the filenames that were in paths with \ between directories or folders, but the links with / slashes were returned as is.
I altered & added a second function that was similar but replaced the "\" in line 4 with "/" and called it forwardslashgetfilename and run it in a separate column after I run the first function.

Running one function after another is not difficult, but I was curious if you can expand the code in splitList operation in line 4 to include both "\" or "/". I'm no VBA programmer but I tried splitList = VBA.Split(FullPath, "\" or "/") and it didn't work.

Thoughts? I'm assuming its some simple syntax - I'm just clueless at this point... but I will start poking around the interwebs...

Tks!
This comment was minimized by the moderator on the site
The formula raises a #VALUE! error if the source cell has only a filename to begin with.. Embedding the entire formula in an IFERROR function solves this problem, e.g., =IFERROR(<orig formula>,A1)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
Rate this post:
0   Characters
Suggested Locations