Формула Excel: извлечение пути из полного имени файла
Чтобы извлечь путь из полного пути с именем файла, используйте формулу, сочетающую функции ЛЕВСИМВ, НАЙТИ, ПОДСТАВИТЬ и ДЛСТР. Она может показаться немного длинной, но в этом руководстве подробно объясняется, как она работает.
Универсальная формула:
| LEFT(path,FIND("?",SUBSTITUTE(path,"\","?",LEN(path)-LEN(SUBSTITUTE(path,"\",""))))) |
Аргументы
| Path: the cell reference or text string contains file path and file name. |
Как работает эта формула
Пример: чтобы извлечь путь из ячейки B3, содержащей полный путь и имя файла, используйте следующую формулу:
| =LEFT(B3,FIND("?",SUBSTITUTE(B3,"\","?",LEN(B3)-LEN(SUBSTITUTE(B3,"\",""))))) |
Нажмите Enter, чтобы извлечь путь из ячейки.
Пояснение
Чтобы извлечь путь из полного пути с именем файла, формула сначала подсчитывает количество символов «\» с помощью функций ДЛСТР и ПОДСТАВИТЬ, затем заменяет последний символ «\» на специальный символ «?» с помощью функции ПОДСТАВИТЬ и, наконец, находит этот специальный символ «?» с помощью функции НАЙТИ и извлекает путь с помощью функции ЛЕВСИМВ.
Функция LEN возвращает количество символов в текстовой строке.
Функция SUBSTITUTE заменяет старый текст на новое значение.
Формула LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»)) подсчитывает количество символов «\».
| =LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»)) =LEN(B3)-LEN(“C:UsersAddinTestWin10Documentsdescription.xlsx”) 50-46 =4 |

ПОДСТАВИТЬ(B3;«\»;«?»;LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»))) заменяет последний символ «\» на «?».
| =SUBSTITUTE(B3,«\»,«?»,LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»))) =SUBSTITUTE(B3,«\»,«?»,4) =C:\Users\AddinTestWin10\Documents?description.xlsx |

Функция FIND используется для поиска строки внутри другой строки и возвращает позицию первого вхождения искомой строки.
Формула FIND(«?»,SUBSTITUTE(B3,«\»,«?»,LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»)))) находит позицию символа «?» в текстовой строке «C:\Users\AddinTestWin10\Documents?description.xlsx».
| =FIND(«?»,SUBSTITUTE(B3,«\»,«?»,LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»)))) =FIND(«?»,«C:\Users\AddinTestWin10\Documents?description.xlsx») =34 |

Функция LEFT извлекает подстроку фиксированной длины с левой стороны заданного текста.
| =LEFT(B3,FIND(«?»,SUBSTITUTE(B3,«\»,«?»,LEN(B3)-LEN(SUBSTITUTE(B3,«\»,«»))))) =LEFT(B3,34) =C:\Users\AddinTestWin10\Documents\ |

Пример файла
Нажмите, чтобы скачать пример файла
Связанные формулы
- Извлечение справа до указанного символа
Здесь приведена формула для извлечения текста справа от заданной позиции до определённого символа с помощью функции «Извлечь текст». - Извлечение расширения из имени файла
Вот формула, которая поможет извлечь расширение файла из его имени и поместить его в отдельный столбец. - Извлечение имени файла из пути
В статье объясняется, как с помощью формул извлечь имя файла — с расширением или без него — из пути к файлу, указанного в определённой ячейке Excel. - Добавление дефисов к номеру телефона
Чтобы добавить дефисы к номеру телефона, воспользуйтесь формулой в Excel.
- Функция ЛЕВСИМВ (LEFT)
Извлекает подстроку с начала текста. - Функция ПОДСТАВИТЬ (SUBSTITUTE)
Заменяет одну текстовую строку на другую. - Функция ДЛСТР (LEN)
Возвращает количество символов в текстовой строке. - Функция ПОИСК (SEARCH)
Находит позицию указанного символа или подстроки в заданной текстовой строке. - Функция НАЙТИ (FIND)
Находит одну строку внутри другой.
Лучшие инструменты для повышения продуктивности в Office
Kutools для Excel — Помогает вам выделиться из толпы
Kutools для Excel предлагает более 300 функций,гарантируя, что всё необходимое всегда под рукой…
Office Tab — Включает вкладки для чтения и редактирования в Microsoft Office (включая Excel)
- Переключайтесь между десятками открытых документов всего за секунду!
- Сократите сотни кликов мышью каждый день и забудьте о «мышечной руке».
- Повышает продуктивность на 50 % при одновременном просмотре и редактировании нескольких документов.
- Добавляет удобство работы с вкладками в Office (включая Excel) — как в Chrome, Edge и Firefox.