Я пытаюсь просмотреть имя файла, над которым я работаю, в Excel. Я хотел бы использовать формулу, чтобы вернуть имя файла в ячейку электронной таблицы. Например, если файл называется workbook1_AD00234.xls
то я хотел бы ячейку A1 , чтобы показать AD00234
и ячейку B1 , чтобы показать workbook1
Как я могу сделать это с формулой?
1 ответ
Функция CELL
может использоваться для получения имени файла текущей рабочей книги. На Mac он возвращает разделенный двоеточиями путь к каталогу, содержащему рабочую книгу, имя рабочей книги в квадратных скобках, затем имя текущего листа, что-то вроде:
=CELL("filename",A1) -> My HD:Users:myuser:Desktop:[workbook1_AD00234.xls]Sheet1
для листа Sheet1 в книге с именем workbook1_AD00234.xls, хранящейся на моем рабочем столе. Учитывая это, вы можете извлечь его части:
A
1 =CELL("filename",A1)
2 =MID(A1,FIND("[",A1)+1,FIND("]",A1)-FIND("[",A1)-1)
3 =LEFT(A2,FIND("_",A2)-1)
4 =RIGHT(A2,LEN(A2)-FIND("_",A2))
в результате чего:
A
1 My HD:Users:myuser:Desktop:[workbook1_AD00234.xls]Sheet1
2 workbook1_AD00234.xls
3 workbook1
4 AD00234.xls
В Windows я подозреваю, что формат пути отличается, поэтому вам может потребоваться изменить формулу в A2, хотя, если путь отличается, но имя книги по-прежнему в квадратных скобках, приведенный выше должен работать. A2 извлекает все из A1 между первой открытой квадратной скобкой и первой закрытой квадратной скобкой после первой открытой квадратной скобки. Формула в A3 выделяет все слева от первого подчеркивания из имени файла в A2. Формула в A4 выделяет все справа от первого подчеркивания из имени файла в A2.