Перейти до основного матеріалу

Як швидко витягти ім'я файлу з повного шляху в Excel?

Припустимо, у вас є аркуш, який містить список шляхів до файлів, тепер ви хотіли б витягти з кожного шляху лише ім'я файлу (праву частину остаточної зворотної риски), як показано на наступних скріншотах. Чи є якісь швидкі хитрощі для вирішення цього завдання?

Витягніть ім'я файлу з повного шляху за допомогою формули в Excel
Витягніть ім'я файлу з повного шляху за допомогою визначеної користувачем функції
Витягніть ім'я файлу з повного шляху за допомогою коду VBA


Витягніть ім'я файлу з повного шляху за допомогою формули в Excel

В Excel ви можете скористатися наведеною нижче формулою, щоб швидко витягти лише ім'я файлу з повного шляху.

Виділіть порожню клітинку, введіть в неї формулу нижче, а потім натисніть Що натомість? Створіть віртуальну версію себе у ключ

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

Tips : A1 - це комірка, з якої потрібно витягти ім'я файлу), і натисніть кнопку Enter, а потім перетягніть маркер заповнення, щоб заповнити потрібний діапазон. Після цього ім'я файлу витягується з кожної комірки.

назва витягу документа1


Витягніть ім'я файлу з повного шляху за допомогою визначеної користувачем функції

За допомогою наведеної нижче функції, яку визначає користувач, ви можете легко та швидко отримати ім’я файлу.

1. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Вікно Microsoft Visual Basic для програм.

2. Клацання Insert > Модуліта вставте наступний код у Вікно модуля.

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. Натисніть інший + Q клавіші, щоб закрити Microsoft Visual Basic для додатків вікно і поверніться до робочого аркуша. Наприклад, у порожню клітинку, В1, введіть у неї формулу нижче та натисніть Що натомість? Створіть віртуальну версію себе у ключ

=FunctionGetFileName(A1)

doc-extract-імена файлів1

Потім знову виділіть комірку B1, перетягніть маркер заповнення до діапазону, до якого ви хочете застосувати цю формулу, і всі імена файлів були витягнуті з повних шляхів як такий результат:

doc-extract-імена файлів1


Витягніть ім'я файлу з повного шляху за допомогою коду VBA

Окрім визначеної користувачем функції, код VBA також може допомогти вам витягти імена файлів. Будь ласка, зробіть так:

1. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Вікно Microsoft Visual Basic для програм.

2. Клацання Insert > Модуліта вставте наступний код у вікно модуля.

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. Потім натисніть F5 для запуску цього коду та виберіть діапазон, з якого ви хочете витягти ім'я файлу, див. знімок екрана:

doc-extract-імена файлів1

4. А потім клацніть OK, імена файлів були вилучені з виділення наступним чином:

примітки: За допомогою цього коду VBA оригінальні дані будуть знищені, тому скопіюйте його перед застосуванням цього коду.

Найкращі інструменти продуктивності офісу

🤖 Kutools AI Aide: Революціонізуйте аналіз даних на основі: Інтелектуальне виконання   |  Згенерувати код  |  Створення спеціальних формул  |  Аналізуйте дані та створюйте діаграми  |  Викликати функції Kutools...
Популярні функції: Знайдіть, виділіть або визначте дублікати   |  Видалити порожні рядки   |  Об’єднайте стовпці або клітинки без втрати даних   |   Раунд без Формули ...
Супер пошук: VLookup за кількома критеріями    Багатозначний VLookup  |   VLookup на кількох аркушах   |   Нечіткий пошук ....
Розширений розкривний список: Швидке створення випадаючого списку   |  Залежний спадний список   |  Виберіть розкривний список, що вибирається ....
Менеджер колонок: Додайте конкретну кількість стовпців  |  Перемістити стовпці  |  Перемкнути статус видимості прихованих стовпців  |  Порівняйте діапазони та стовпці ...
Особливості: Фокус сітки   |  Перегляд дизайну   |   Велика панель формул    Диспетчер робочих книг і аркушів   |  Бібліотека ресурсів (автотекст)   |  Вибір дати   |  Об’єднайте робочі аркуші   |  Шифрування/розшифрування клітинок    Надсилайте листи за списком   |  Супер фільтр   |   Спеціальний фільтр (фільтр жирний/курсив/закреслений...) ...
Топ-15 наборів інструментів12 текст Tools (додати текст, Видалити символи, ...)   |   50 + Графік типи (діаграма Ганта, ...)   |   40+ Практичний Формули (Розрахуйте вік на основі дня народження, ...)   |   19 вставка Tools (Вставте QR-код, Вставити зображення зі шляху, ...)   |   12 Перетворення Tools (Числа до слів, Валютна конверсія, ...)   |   7 Злиття та розділення Tools (Розширені комбіновані ряди, Розділені клітини, ...)   |   ... і більше

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
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