Excel функция имени листа

вовсе нет, есть штатные средства  

  ЯЧЕЙКА  

  Возвращает информацию о форматировании, положении или содержимом левого верхнего угла в ссылке.  

  Синтаксис  

  ЯЧЕЙКА(тип_информации;ссылка)  

  Тип_информации   — это текстовое значение, задающее требуемый тип информации о ячейке. Приведенный ниже список показывает возможные значения аргумента тип_информации и соответствующие результаты.  

  Тип_информации Возвращаемое значение    

  «адрес» Ссылка на первую ячейку в аргументе «ссылка» в виде текстовой строки.    
«защита» 0, если ячейка разблокирована, и 1, если ячейка заблокирована.    
«имяфайла» Имя файла (включая полный путь), который содержит ссылку, в виде текстовой строки. Если лист, содержащий ссылку, еще не был сохранен, возвращается пустая строка («»).    
«префикс» Текстовое значение, соответствующее префиксу метки ячейки. Апостроф (‘) соответствует тексту, выровненному влево, кавычки («) — тексту, выровненному вправо, знак крышки (^) — тексту, выровненному по центру, обратная косая черта () — тексту с заполнением и пустой текст («») — любому другому содержимому ячейки.    
«скобки» 1, если положительные или все числа отображаются в круглых скобках; во всех остальных случаях — 0 (ноль).    
«содержимое» Значение левой верхней ячейки в ссылке; не формула.    
«столбец» Номер столбца ячейки в аргументе «ссылка».    
«строка» Номер строки ячейки в ссылке.    
«тип» Текстовое значение, соответствующее типу данных в ячейке. Пустой ячейке соответствует «b», текстовой константе в ячейке соответствует «l» и «v» — любому другому значению в ячейке.    
«формат» Текстовое значение, соответствующее числовому формату ячейки. Значения для различных форматов показаны в приведенной ниже таблице. Если ячейка изменяет цвет при выводе отрицательных значений, в конце текстового значения добавляется «-». Если положительные или все числа отображаются в круглых скобках, в конце текстового значения добавляется «()».    
«цвет» 1, если ячейка изменяет цвет при выводе отрицательных значений; во всех остальных случаях — 0 (ноль).    
«ширина» Ширина столбца ячейки, округленная до целого. Единица измерения равна ширине одного знака для шрифта стандартного размера.    

  Ссылка   — это ячейка, информацию о которой необходимо получить. Если аргумент опущен, возвращается требуемая информация о последней измененной ячейке. Приведенный ниже список описывает текстовые значения, возвращаемые функцией ЯЧЕЙКА, если аргумент тип_информации равен «формат», а ячейка форматирована встроенным числовым форматом.  

  Формат Microsoft Excel Значение, возвращаемое функцией ЯЧЕЙКА    
Общий «G»    
0 «F0»    
# ##0 «,0»    
0,00 «F2»    
# ##0,00 «,2»    
$# ##0_);($# ##0) «C0»    
$# ##0_);[Красный]($# ##0) «C0-»
$# ##0,00_);($# ##0,00) «C2»    
$# ##0,00_);[Красный]($# ##0,00) «C2-»
0% «P0»    
0,00% «P2»    
0,00E+00 «S2»    
# ?/? или # ??/?? «G»    
д.м.гг, или ДД.ММ.ГГ ч:мм, или дд.мм.гг «D4»    
Д МММ ГГ или ДД МММ ГГ «D1»    
д.м, или дд.ммм, или Д МММ «D2»    
ммм.гг, или ммм.гггг, или МММ ГГ, или МММ ГГГГ «D3»    
дд.мм «D5»    
ч:мм AM/PM «D7»    
ч:мм:сс AM/PM «D6»    
ч:мм «D9»    
ч:мм:сс «D8»    

    Если аргумент тип_информации функции ЯЧЕЙКА равен «формат», а формат ячейки был изменен, необходимо пересчитать лист для обновления значения функции.  

  Заметки  

  Функция ЯЧЕЙКА обеспечивает совместимость с другими программами электронных таблиц.  

  Пример  

  Чтобы этот пример проще было понять, скопируйте его на пустой лист.  

  Инструкции  

  Создайте пустую книгу или лист.    
Выделите пример в разделе справки. Не выделяйте заголовок строки или столбца.    

    Выделение примера в справке.  

  Нажмите сочетание клавиш CTRL+C    
На листе выделите ячейку A1 и нажмите сочетание клавиш CTRL+V.    
Чтобы переключиться между просмотром результатов и просмотром формул, возвращающих эти результаты, нажмите сочетание клавиш CTRL+` (апостроф) или в меню Сервис укажите на пункт Зависимости формул и выберите режим Режим проверки формул.    

     1    
2    
3    
A    
Данные    
5 марта    
ИТОГИ    
Формула Описание (результат)    
=ЯЧЕЙКА(«строка»;A20) Номер строки ячейки A20 (20)    
=ЯЧЕЙКА(«формат»; A2) Код формата первой строки (D2, см. выше)    
=ЯЧЕЙКА(«содержимое»; A3) Содержимое ячейки A3 (ИТОГИ)


Определим имя листа с помощью функции

ЯЧЕЙКА()

.

Имя листа можно определить с помощью функции

ЯЧЕЙКА()

, записав формулу (см.

файл примера

):

=ПРАВСИМВ(ЯЧЕЙКА(«имяфайла»);ДЛСТР(ЯЧЕЙКА(«имяфайла»))-ПОИСК(«]»;ЯЧЕЙКА(«имяфайла»)))

Если формула вводится в новую книгу, то ее сначала нужно сохранить. После сохранения, возможно, потребуется нажать клавишу

F9

(Вкладка

Формулы

, Группа

Вычисление

,

Пересчет

).

Формула вернет имя листа, содержащего ячейку с вышеуказанной формулой. Если требуется определить имя другого листа, то можно использовать туже функцию

ЯЧЕЙКА()

, но с аргументом «адрес».

Для этого нужно, чтобы второй аргумент содержал ссылку на ячейку другого листа, имя которого и будет определено. Если формула

=ЯЧЕЙКА(«адрес»;лист2!A1)

находится на

листе1

в ячейке

B1

, то имя листа (

Лист2

) можно определить по формуле:


=ПСТР(B1;ПОИСК(«]»;B1)+1;ДЛСТР(B1)-ПОИСК(«]»;B1)-5)

В этом случае имя листа не должно состоять только из цифр, т.к. если в качестве названия листа использовано число, то функция

ЯЧЕЙКА()

возвращает название книги и листа в апострофах (‘) и формула вернет неправильный результат. Справиться с этим поможет формула

=ПОДСТАВИТЬ(C1;»‘»;»»)

, которая удалит символ апострофа.

Также предполагается, что имя файла не содержит символа

закрывающая квадратная скобка

( ] ).


ВНИМАНИЕ

!

Иногда, когда открыто несколько книг, функция

ЯЧЕЙКА()

может работать некорректно. Для восстановления работоспособности формулы нужно нажать клавишу

F9

(

).


ПРИМЕНЕНИЕ:

При изменении имени листа, все ссылки в формулах автоматически обновятся и будут продолжать работать. Исключение составляет функция

ДВССЫЛ()

, в которой имя листа может фигурировать в текстовой форме

ДВССЫЛ(«Лист1!A1»)

. В статье

Определение имени листа для использования в функции ДВССЫЛ()

показано как использовать функцию

ЯЧЕЙКА()

, чтобы сохранить работоспособность формулы с функцией

ДВССЫЛ()

.

Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Еще…Меньше

Предположим, что вы хотите добавить в табличный отчет сведения, подтверждающие расположение книги и листа, чтобы быстро находить и идентифицировать их. Эту задачу можно решить несколькими способами.

Вставка текущего имени файла, его полного пути и имени активного листа

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

=ЯЧЕЙКА(«filename»)

Вставка текущего имени файла и имени активного листа

Введите или вставьте следующую формулу в виде формула массива, чтобы отобразить текущее имя файла и имя активного листа.

=ПРАВСИМВ(ЯЧЕЙКА(«filename»);ДЛСТР(ЯЧЕЙКА(«filename»))- МАКС(ЕСЛИ(НЕ(ЕОШ(ПОИСК(«»;ЯЧЕЙКА(«filename»); СТРОКА(1:255))));ПОИСК(«»;ЯЧЕЙКА(«filename»);СТРОКА(1:255)))))

Примечания: 

  • Чтобы ввести формулу в виде формулы массива, нажмите клавиши CTRL+SHIFT+ВВОД.

  • Формула возвращает имя листа, если он был сохранен хотя бы один раз. Если вы используете эту формулу на несохраненном листе, ячейка формулы останется пустой, пока вы не сохраните лист.

Вставка только текущего имени файла

Введите или вставьте следующую формулу, чтобы вставить имя текущего файла в ячейку.

=ПСТР(ЯЧЕЙКА(«filename»);ПОИСК(«[«;ЯЧЕЙКА(«filename»))+1; ПОИСК(«]»;ЯЧЕЙКА(«filename»))-ПОИСК(«[«;ЯЧЕЙКА(«filename»))-1)

Примечание: Если вы используете эту формулу на несохраненном листе, вы увидите сообщение об ошибке #ЗНАЧ! в ячейке. После сохранения листа ошибка заменяется именем файла.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Нужна дополнительная помощь?

Функция ЛИСТ в Excel возвращает числовое значение, соответствующее номеру листа, на который указывает ссылка, переданная функции в качестве параметра.

Функции ЛИСТ и ЛИСТЫ в Excel: описание аргументов и синтаксиса

Функция ЛИСТЫ в Excel возвращает числовое значение, которое соответствует количеству листов, на которые предоставлена ссылка.

Примечания:

  1. Обе функции полезны для использования в документах, содержащих большое количество листов.
  2. Лист в Excel – это таблица из всех ячеек, отображаемых на экране и находящихся за его пределами (всего 1 048 576 строк и 16 384 столбца). При отправке листа на печать он может быть разбит на несколько страниц. Поэтому нельзя путать термины «лист» и «страница».
  3. Количество листов в книге ограничено лишь объемом ОЗУ ПК.

Функция ЛИСТ имеет в своем синтаксисе всего 1 аргумент и то не обязательный для заполнения: =ЛИСТ(значение).

  • значение – необязательный аргумент функции, который содержит текстовые данные с названием листа либо ссылку, для которой требуется установить номер листа. Если данный параметр не указан, функция вернет номер листа, в одной из ячеек которого она была записана.

Примечания:

  1. При работе функции ЛИСТ учитываются все листы, которые являются видимыми, скрытыми и очень скрытыми. Исключениями являются диалоги, макросы и диаграммы.
  2. Если аргументом функции является текстовое значение, которое не соответствует названию ни одного из листов, содержащихся в книге, будет возвращена ошибка #НД.
  3. Если в качестве аргумента функции было передано недействительное значение, результатом ее вычислений будет являться ошибка #ССЫЛКА!.
  4. В рамках объектной модели (иерархия объектов на VBA, в которой Application является главным объектом, а Workbook, Worksheer и т. д. – дочерними объектами) функция ЛИСТ недоступна, поскольку она содержит схожую функцию.

Функция листы имеет следующий синтаксис: =ЛИСТЫ(ссылка).

  • ссылка – объект ссылочного типа, для которого требуется определить количество листов. Данный аргумент является необязательным. Если данный параметр не указан, функция вернет количество листов, содержащихся в книге, на одном из листов которой она была записана.

Примечания:

  1. Данная функция подсчитывает количество всех скрытых, очень скрытых и видимых листов, за исключением диаграмм, макросов и диалогов.
  2. Если в качестве параметра была передана недействительная ссылка, результатом вычислений является код ошибки #ССЫЛКА!.
  3. Данная функция недоступна в объектной модели в связи с наличием там схожей функции.



Как получить имя листа формулой в Excel

Пример 1. При выполнении расчетной работы студент использовал программу Excel, в которой создал книгу из несколько листов. Для собственного удобства, студент решил в ячейках A2 и B2 каждого листа выводить данные о названии листа и его порядковом номере соответственно. Для этого он использовал следующие формулы:

Имя ЛИСТа.

Описание аргументов для функции ПСТР:

  1. ЯЧЕЙКА(«имяфайла») – функция, возвращающая текст, в котором функция ПСТР выполняет поиск заданного количества символов. В данном случае вернется значение «C:UserssoulpDesktop[ЛИСТ_ЛИСТЫ.xlsx]Статические расчеты», где после символа «]» находится искомый текст – название листа.
  2. НАЙТИ(«]»;ЯЧЕЙКА(«имяфайла»))+1 – функция, возвращающая номер позиции символа «]», единица добавлена с той целью, чтобы функция ПСТР не учитывала символ «]».
  3. 31 – максимальное количество символов в названии листа.

=ЛИСТ() – данная функция без параметра вернет номер текущего листа. В результате ее вычисления получим количество листов в текущей книге.

Примеры использования функции ЛИСТ и ЛИСТЫ

Пример 2. В книге Excel содержится несколько листов. Необходимо:

  1. Вернуть номер текущего листа.
  2. Вернуть номер листа с названием «Статические_расчеты».
  3. Вернуть номер листа «Динамические_расчеты», если его ячейка A3 содержит значение 0.

Внесем данные в таблицу:

Внесем данные.

Далее составим формулы для всех 4-х условий:

  • для условия №1 используем следующую формулу: =ЛИСТ()
  • для условия №2 введем формулу: =ЛИСТ(«Статические_расчеты»)
  • для условия №3 запишем формулу:

Функция ЕСЛИ выполняет проверку условия равенства значения, хранящегося в ячейке A3 листа Динамические_расчеты, нулю или пустому значению.

В результате получим:

В результате.

Обработка информации о листах книги по формуле Excel

Пример 3. В книге Excel содержится несколько листов. Необходимо определить общее количество листов, а также число листов, содержащихся между листами «Статические_расчеты» и «Экономические_расчеты».

Исходная таблица имеет вид:

Исходная таблица.

Общее количество листов вычислим по формуле:

Для определения количества листов, содержащихся между двумя указанными листами, запишем формулу:

  1. Статические_расчеты:Экономические_расчеты!A2 – ссылка на ячейку A2 диапазона листов между «Статические_расчеты» и «Экономические_расчеты» включая эти листы.
  2. Для получения искомого значения было вычтено число 2.

В результате получим следующее:

Формула выводит информацию о листах.

Скачать примеры функций ЛИСТ и ЛИСТЫ в формулах Excel

Формула выводит подробную информацию по данным о листах в определенном диапазоне их расположения в рабочей книге Excel.

Хитрости »

4 Март 2015              53366 просмотров


Как получить имя листа формулой

Задача: записать в отдельной ячейке или внутри формулы имя текущего листа(т.е. того, в котором сама функция).

В принципе это очень легко сделать простейшей функцией пользователя:

'---------------------------------------------------------------------------------------
' Procedure : GetShName
' DateTime  : 04.03.2015 10:44
' Author    : The_Prist(Щербаков Дмитрий)
'             http://www.excel-vba.ru
' Purpose   : Функция возвращает в ячейку имя листа
'             rCell - Необязательный аргумент.
'                     Если указан - функция вернет имя листа, на котором расположена эта ячейка
'                     Если не указан - функция вернет имя листа, в котором записана функция
'---------------------------------------------------------------------------------------
Function GetShName(Optional rCell As Range)
    If Not rCell Is Nothing Then
        GetShName = rCell.Parent.Name
    Else
        GetShName = Application.Caller.Parent.Name
    End If
End Function

Синтаксис:
получение имени листа, в котором записана функция:
=GetShName()
получение имени листа, в котором расположена указанная ячейка
=GetShName(A1) — данная запись равнозначна записи без ячейки, т.к. ячейка все равно в пределах листа с самой функцией
=GetShName(Лист2!A1)


Но бывают случаи, когда использование макросов весьма нежелательно. Тогда можно воспользоваться чуть более громоздкой и менее понятной формулой:

=ПСТР(ЯЧЕЙКА(«filename»;A2);ПОИСК(«]»;ЯЧЕЙКА(«filename»;A2))+1;31)
=MID(CELL(«filename»,A2),SEARCH(«]»,CELL(«filename»,A2))+1,31)

Однако эта формула вернет точно такой же результат, как функция пользователя выше и макросы совершенно не нужны.

Теперь разберем эту формулу поподробнее
Самая основная часть — ЯЧЕЙКА(«filename»;A2). Функция ЯЧЕЙКА (CELL) с записанным первым аргументом «filename» возвращает полный путь к книге, включая имя листа и адрес ячейки, в которой записана функция:
C:UsersДмитрийDesktop[Tips_All_GetShName.xls]Лист1
Т.к. нам нужно только имя листа — мы применяем ПСТР (MID), которая возвращает часть текста, начиная с указанной позиции символа. ПОИСК (SEARCH) ищет нам именно эту позицию — позицию символа «]».
Если по шагам просмотреть этапы работы формулы, то будет нечто вроде:
=ПСТР(ЯЧЕЙКА(«filename»;A2);ПОИСК(«]»;ЯЧЕЙКА(«filename»;A2))+1;31)
Шаг1 =>
=ПСТР(ЯЧЕЙКА(«filename»;A2);ПОИСК(«]»;C:UsersДмитрийDesktop[Tips_All_GetShName.xls]Лист1)+1;31)
Шаг2 =>
=ПСТР(ЯЧЕЙКА(«filename»;A2);49+1;31)
Шаг3 =>
=ПСТР(C:UsersДмитрийDesktop[Tips_All_GetShName.xls]Лист1;50;31)
Шаг4 =>
=Лист1
Первый момент: почему применяю цифру 31 последним аргументом ПСТР? По факту, там необходимо указывать точное количество символов, но если указать больше — то будут взяты все символы от указанного и до последнего. Т.е можно было бы указать и 99, но 31 — это максимальное количество символов, которое можно использовать в имени листа.
Второй момент: первым аргументом функции ЯЧЕЙКА указывается текст, обозначающий тип сведений. В русской локализации он доступен на русском — «имяфайла». Однако при открытии файла с этой функцией в другой локализации тип сведений не будет переведен и функция не сможет работать. Поэтому я указываю на английском, т.к. он является универсальным в данном случае и будет работать в любой локализации. Однако нет никакой ошибки, если указать на русском: ЯЧЕЙКА(«имяфайла»;A2)

Если вторым аргументом функции ЯЧЕЙКА ничего не указывать(=ЯЧЕЙКА(«filename»)), то функция вернет полный путь с именем того листа, который активен в данный момент(даже если это лист другой книги). Это всегда надо учитывать. Часто функцию используют для определения имени книги, в которой сама функция записана(например, для запросов Power Query — Относительный путь к данным PowerQuery). И в какой-то момент может получиться так, что ожидаете увидеть имя книги или листа с функцией, а получаете совсем другое.

Правда, у этой формулы есть свои недостатки: обязательно необходимо, чтобы книга была сохранена на диске. Это означает, что формула не сработает для книги, которая была только что создана и не сохранена. Связано это с ограничениями возможностей параметра «filename» функции ЯЧЕЙКА(CELL). Она не может получить путь к файлу, который еще не сохранен.
Функция пользователя(UDF) GetShName(приведенная в самом начале статьи) лишена этого недостатка.

Для чего вообще может быть нужно записывать имя листа в ячейку? Ну, например, если имя листа периодически меняется, а в своих формулах вы используете функции вроде ДВССЫЛ со ссылкой на этот лист. Либо для создания более наглядного оглавления через гиперссылки.


Кто-то уже явно догадался, что подобным же образом можно получить не только имя листа — но и имя книги:
=ПСТР(ЯЧЕЙКА(«filename»);ПОИСК(«[«;ЯЧЕЙКА(«filename»))+1;ПОИСК(«]»;ЯЧЕЙКА(«filename»))-ПОИСК(«[«;ЯЧЕЙКА(«filename»))-1)
так же как и для имени листа — можно указать ячейку из другой книги и тогда формула вернет имя той книги, из которой указана ячейка.
Если ячейка не указана — функция вернет имя активной в данный момент книги.

Так же можно получить полный путь к книге и имя книги(без квадратных скобок и имени листа):
=ПОДСТАВИТЬ(ПСТР(ЯЧЕЙКА(«filename»;A1);1;ПОИСК(«]»;ЯЧЕЙКА(«filename»;A1))-1);»[«;»»)

Так же см.:
Имя предыдущего листа


Статья помогла? Поделись ссылкой с друзьями!

  Плейлист   Видеоуроки


Поиск по меткам



Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика

Понравилась статья? Поделить с друзьями:
  • Excel функция или на английском языке
  • Excel функция изменить ячейку
  • Excel функция значение по английскому языку
  • Excel функция заменяющая текст
  • Excel функция замены цвета