Как обратиться к листу по номеру excel

Как обратится по порядковому номеру листа

Ghenek

Дата: Вторник, 13.06.2017, 12:35 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 21


Репутация:

0

±

Замечаний:
0% ±


Excel 2013

Здравствуйте. Подскажите как присвоить ячейке значение ячейки из другого листа обратившись к листу по порядковому номеру (без использования макросов)?

 

Ответить

Michael_S

Дата: Вторник, 13.06.2017, 12:42 |
Сообщение № 2

Группа: Друзья

Ранг: Старожил

Сообщений: 2012


Репутация:

373

±

Замечаний:
0% ±


Excel2016

без макросов — никак.

 

Ответить

Nic70y

Дата: Вторник, 13.06.2017, 12:52 |
Сообщение № 3

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

листы то как именуются?
как попало?
можно ли составить список листов вручную?
и еще куча вопросов.


ЮMoney 41001841029809

 

Ответить

Ghenek

Дата: Вторник, 13.06.2017, 12:59 |
Сообщение № 4

Группа: Пользователи

Ранг: Новичок

Сообщений: 21


Репутация:

0

±

Замечаний:
0% ±


Excel 2013

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

Я хотел бы создать вторую страницу и на ней сделать необходимые мне вычисления.
А потом в следующих файлах просто вставлять эту вторую страницу.

 

Ответить

китин

Дата: Вторник, 13.06.2017, 13:01 |
Сообщение № 5

Группа: Модераторы

Ранг: Экселист

Сообщений: 6973


Репутация:

1063

±

Замечаний:
0% ±


Excel 2007;2010;2016


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852

 

Ответить

Nic70y

Дата: Вторник, 13.06.2017, 13:08 |
Сообщение № 6

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

тода без макросов низя


ЮMoney 41001841029809

 

Ответить

Ghenek

Дата: Вторник, 13.06.2017, 13:17 |
Сообщение № 7

Группа: Пользователи

Ранг: Новичок

Сообщений: 21


Репутация:

0

±

Замечаний:
0% ±


Excel 2013

Как вариант, может пройдёт такой фокус если я заранее переименую первую страницу в тоже название что и в исходнике?

 

Ответить

AlexM

Дата: Вторник, 13.06.2017, 13:43 |
Сообщение № 8

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4257


Репутация:

1046

±

Замечаний:
0% ±


Excel 2003

Макрофункцией можно.

К сообщению приложен файл:

___.xls
(24.5 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.

 

Ответить

sboy

Дата: Вторник, 13.06.2017, 13:48 |
Сообщение № 9

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2566


Репутация:

724

±

Замечаний:
0% ±


Excel 2010

Добрый день.
можно с помощью макрофункции

Код

=ПОЛУЧИТЬ.РАБОЧУЮ.КНИГУ(1)

применить формулу для обращения к первому листу в книге

Код

=ДВССЫЛ(СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(ИНДЕКС(листы;1);»]»;ПОВТОР(» «;99));99))&»!»&ЯЧЕЙКА(«адрес»;C1))

К сообщению приложен файл:

1476172.xlsm
(10.2 Kb)


Яндекс: 410016850021169

 

Ответить

Nic70y

Дата: Вторник, 13.06.2017, 14:21 |
Сообщение № 10

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

Код

=ДВССЫЛ(«‘»&ИНДЕКС(листы;1)&»‘!»&АДРЕС(СТРОКА();3))


ЮMoney 41001841029809

 

Ответить

sboy

Дата: Вторник, 13.06.2017, 14:52 |
Сообщение № 11

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2566


Репутация:

724

±

Замечаний:
0% ±


Excel 2010

Nic70y, О! точно, можно же не обрезать название файла, только добавить столбец относительный!

Код

=ДВССЫЛ(«‘»&ИНДЕКС(листы;1)&»‘!»&АДРЕС(СТРОКА();СТОЛБЕЦ()))


Яндекс: 410016850021169

 

Ответить

zs

Дата: Вторник, 13.06.2017, 20:02 |
Сообщение № 12

Группа: Заблокированные

Ранг: Участник

Сообщений: 87


Репутация:

-19

±

Замечаний:
100% ±


Excel 2003

Код

=ДВССЫЛ(АДРЕС(2;4;4;1;B2);ИСТИНА)

где В2 название листа из выпадающего списка листов

 

Ответить

Ghenek

Дата: Суббота, 17.06.2017, 12:31 |
Сообщение № 13

Группа: Пользователи

Ранг: Новичок

Сообщений: 21


Репутация:

0

±

Замечаний:
0% ±


Excel 2013

Я в шоке. Такие громадные формулы, толщиной по 20-30 символов…
Как вы всём этом разбираетесь =).

Спасибо большое!

 

Ответить

AndreTM

Дата: Суббота, 17.06.2017, 13:16 |
Сообщение № 14

Группа: Друзья

Ранг: Старожил

Сообщений: 1762


Репутация:

498

±

Замечаний:
0% ±


2003 & 2010

Такие громадные формулы, толщиной по 20-30 символов…

Разве это много?

Вот это вот — «много»

Такие громадные формулы, толщиной по 20-30 символов…

Разве это много?

Вот это вот — «много» :)

Код

=ПОДСТАВИТЬ(ПРОПНАЧ(ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);1;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);2;1)+1;ПСТР(ТЕКСТ(A3;n0);3;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);1;3);»миллиард»&ВПР(ПСТР(ТЕКСТ(A3;n0);3;1)*И(ПСТР(ТЕКСТ(A3;n0);2;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);4;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);5;1)+1;ПСТР(ТЕКСТ(A3;n0);6;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);4;3);»миллион»&ВПР(ПСТР(ТЕКСТ(A3;n0);6;1)*И(ПСТР(ТЕКСТ(A3;n0);5;1)-1);мил;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);7;1)+1)&ИНДЕКС(n1x;ПСТР(ТЕКСТ(A3;n0);8;1)+1;ПСТР(ТЕКСТ(A3;n0);9;1)+1)&ЕСЛИ(-ПСТР(ТЕКСТ(A3;n0);7;3);ВПР(ПСТР(ТЕКСТ(A3;n0);9;1)*И(ПСТР(ТЕКСТ(A3;n0);8;1)-1);тыс;2);»»)&ИНДЕКС(n_4;ПСТР(ТЕКСТ(A3;n0);10;1)+1)&ИНДЕКС(n0x;ПСТР(ТЕКСТ(A3;n0);11;1)+1;ПСТР(ТЕКСТ(A3;n0);12;1)+1));»z»;» «)&ЕСЛИ(ОТБР(ТЕКСТ(A3;n0));»»;»Ноль «)&»рубл»&ВПР(ОСТАТ(МАКС(ОСТАТ(ПСТР(ТЕКСТ(A3;n0);11;2)-11;100);9);10);{0;»ь «:1;»я «:4;»ей «};2)&ПРАВСИМВ(ТЕКСТ(A3;n0);2)&» копе»&ВПР(ОСТАТ(МАКС(ОСТАТ(ПРАВСИМВ(ТЕКСТ(A3;n0);2)-11;100);9);10);{0;»йка»:1;»йки»:4;»ек»};2)

Причем формула вполне себе востребованная


Skype: andre.tm.007
Donate: Qiwi: 9517375010

 

Ответить

Обращение к рабочим листам Excel из кода VBA. Переименование листов, скрытие и отображение с помощью кода VBA Excel. Свойства Worksheets.Name и Worksheets.Visible.

Обращение к рабочим листам

Рабочий лист (Worksheet) принадлежит коллекции всех рабочих листов (Worksheets) книги Excel. Обратиться к листу можно как к элементу коллекции и, напрямую, по его уникальному имени.

Откройте редактор VBA и обратите внимание на вашу книгу в проводнике, где уникальные имена листов указаны без скобок, а в скобках — имена листов, отображаемые на ярлычках в открытой книге Excel. Уникальные имена листов отсортированы по алфавиту и их расположение по порядку не будет соответствовать их индексам (номерам), если листы перемещались по отношению друг к другу. Индексы листов смотрите по порядку расположения ярлычков в открытой книге. Переместили листы — изменились их индексы.

Обращение к рабочему листу в коде VBA Excel:

‘По уникальному имени

УникИмяЛиста

‘По индексу

Worksheets(N)

‘По имени листа на ярлычке

Worksheets(«Имя листа»)

  • УникИмяЛиста — уникальное имя листа, отображаемое в проводнике редактора VBA без скобок, с помощью кода VBA изменить его невозможно.
  • N — индекс листа от 1 до количества всех листов в книге, соответствует порядковому номеру ярлычка этого листа в открытой книге Excel.
  • Имя листа — имя листа, отображаемое в проводнике редактора VBA в скобках, с помощью кода VBA изменить его можно.

Количество листов в рабочей книге Excel определяется так:

‘В активной книге

Worksheets.Count

‘В любой открытой книге,

‘например, в «Книга1.xlsm»

Workbooks(«Книга1.xlsm»).Worksheets.Count

Переименование листов

В VBA Excel есть некоторые особенности в наименовании листов, так как у рабочего листа есть два свойства, связанных с именем: (Name) и Name. Откройте окно «Properties» в редакторе VBA, нажав клавишу «F4», и выделите любой лист в проводнике. Вы увидите, что в окне «Properties» свойству (Name) в скобках соответствует в проводнике уникальное имя листа без скобок, а свойству Name без скобок соответствует изменяемое имя листа в скобках. Оба имени в окне «Properties» можно редактировать.

С помощью кода VBA Excel можно редактировать только имя листа Name, отображаемое на ярлычке листа и в проводнике без скобок. Для этого используется свойство рабочего листа Worksheets.Name со следующим синтаксисом:

expression.Name

где expression — переменная, представляющая собой объект Worksheet. Смена имени осуществляется путем присвоения нового значения свойству Worksheets.Name.

Допустим, у нас есть лист с уникальным именем (Name) — Лист1, индексом — 1 и именем Name — МойЛист, которое необходимо заменить на имя — Реестр.

Лист1.Name = «Реестр»

Worksheets(1).Name = «Реестр»

Worksheets(«МойЛист»).Name = «Реестр»

Скрытие и отображение листов

Для скрытия и отображения рабочих листов в VBA Excel используется свойство Worksheet.Visible со следующим синтаксисом:

expression.Visible

где expression — переменная, представляющая собой объект Worksheet. Свойству Worksheet.Visible могут присваиваться следующие значения:

  • False — лист становится невидимым, но он будет присутствовать в списке скрытых листов, и пользователь сможет его отобразить с помощью инструментов рабочей книги Excel.
  • xlVeryHidden — лист становится супер невидимым и его не будет в списке скрытых листов, пользователь не сможет его отобразить. Актуально для Excel 2003-2016.
  • True — лист становится видимым.

Аналоги присваиваемых значений:

  • False = xlHidden = xlSheetHidden = 1
  • xlVeryHidden = xlSheetVeryHidden = 2
  • True = xlSheetVisible = -1 (константа xlVisible вызывает ошибку)

Примеры:

Лист1.Visible = xlSheetHidden

Лист2.Visible = 1

Worksheets(Worksheets.Count).Visible = xlVeryHidden

Worksheets(«МойЛист»).Visible = True

Как создать, скопировать, переместить или удалить рабочий лист с помощью кода VBA Excel, смотрите в этой статье.

Содержание

  1. VBA Excel. Рабочий лист (обращение, переименование, скрытие)
  2. Обращение к рабочим листам
  3. Переименование листов
  4. Скрытие и отображение листов
  5. Excel Как Обратиться к Листу по Индексу • Ввод данных
  6. Чтение и запись данных в Excel файл из PowerShell | Windows для системных администраторов
  7. Ввод данных
  8. Автозамена
  9. Прогрессия
  10. Протягивание
  11. Полезные приемы при работе с Excel из 1С (Версия 3.1)
  12. Как получить данные из Active Directory и сохранить их в книге Excel?
  13. Работа с файлами Excel.
  14. Как обратиться к листу excel по его номеру
  15. Как ссылаться на рабочий лист по номеру индекса вместо имени в Excel?
  16. Как сослаться на другой лист или книгу в Excel (с примерами)
  17. Ссылка на ячейку на том же листе
  18. Ссылка на ячейку на другом листе
  19. Автоматическое создание ссылки на другой лист в той же книге
  20. Как сослаться на другую книгу в Excel
  21. Внешняя ссылка на открытую книгу
  22. Как создать ссылку на другую книгу (автоматически)
  23. Внешняя ссылка на закрытую книгу
  24. Влияние изменения расположения файла на ссылки
  25. Ссылка на определенное имя (в той же или внешней книге)
  26. Ссылка на определенное имя на том же листе или в книге
  27. Ссылка на определенное имя в другой книге (открытой или закрытой)
  28. Как создать ссылку на именованный диапазон

VBA Excel. Рабочий лист (обращение, переименование, скрытие)

Обращение к рабочим листам Excel из кода VBA. Переименование листов, скрытие и отображение с помощью кода VBA Excel. Свойства Worksheets.Name и Worksheets.Visible.

Обращение к рабочим листам

Рабочий лист (Worksheet) принадлежит коллекции всех рабочих листов (Worksheets) книги Excel. Обратиться к листу можно как к элементу коллекции и, напрямую, по его уникальному имени.

Откройте редактор VBA и обратите внимание на вашу книгу в проводнике, где уникальные имена листов указаны без скобок, а в скобках — имена листов, отображаемые на ярлычках в открытой книге Excel. Уникальные имена листов отсортированы по алфавиту и их расположение по порядку не будет соответствовать их индексам (номерам), если листы перемещались по отношению друг к другу. Индексы листов смотрите по порядку расположения ярлычков в открытой книге. Переместили листы — изменились их индексы.

Обращение к рабочему листу в коде VBA Excel:

  • УникИмяЛиста — уникальное имя листа, отображаемое в проводнике редактора VBA без скобок, с помощью кода VBA изменить его невозможно.
  • N — индекс листа от 1 до количества всех листов в книге, соответствует порядковому номеру ярлычка этого листа в открытой книге Excel.
  • Имя листа — имя листа, отображаемое в проводнике редактора VBA в скобках, с помощью кода VBA изменить его можно.

Количество листов в рабочей книге Excel определяется так:

Переименование листов

В VBA Excel есть некоторые особенности в наименовании листов, так как у рабочего листа есть два свойства, связанных с именем: (Name) и Name. Откройте окно «Properties» в редакторе VBA, нажав клавишу «F4», и выделите любой лист в проводнике. Вы увидите, что в окне «Properties» свойству (Name) в скобках соответствует в проводнике уникальное имя листа без скобок, а свойству Name без скобок соответствует изменяемое имя листа в скобках. Оба имени в окне «Properties» можно редактировать.

С помощью кода VBA Excel можно редактировать только имя листа Name, отображаемое на ярлычке листа и в проводнике без скобок. Для этого используется свойство рабочего листа Worksheets.Name со следующим синтаксисом:

expression.Name

где expression — переменная, представляющая собой объект Worksheet. Смена имени осуществляется путем присвоения нового значения свойству Worksheets.Name.

Допустим, у нас есть лист с уникальным именем (Name) — Лист1, индексом — 1 и именем Name — МойЛист, которое необходимо заменить на имя — Реестр.

Скрытие и отображение листов

Для скрытия и отображения рабочих листов в VBA Excel используется свойство Worksheet.Visible со следующим синтаксисом:

expression.Visible

где expression — переменная, представляющая собой объект Worksheet. Свойству Worksheet.Visible могут присваиваться следующие значения:

  • False — лист становится невидимым, но он будет присутствовать в списке скрытых листов, и пользователь сможет его отобразить с помощью инструментов рабочей книги Excel.
  • xlVeryHidden — лист становится супер невидимым и его не будет в списке скрытых листов, пользователь не сможет его отобразить. Актуально для Excel 2003-2016.
  • True — лист становится видимым.

Аналоги присваиваемых значений:

  • False = xlHidden = xlSheetHidden = 1
  • xlVeryHidden = xlSheetVeryHidden = 2
  • True = xlSheetVisible = -1 (константа xlVisible вызывает ошибку)

Источник

Excel Как Обратиться к Листу по Индексу • Ввод данных

Перейдем на лист «Прайс-лист». Посмотрим, что мы здесь имеем. Стоимость первого товара в рублях — доски для сноуборда «Balance» — находится в ячейке «D6». Запомним это.

Переходим на наш лист. Отмечаем ячейку, где должна располагаться цена доски «Balance» в рублях. В данном случае это ячейка «Е2». В строке формул пишем следующее выражение: «=’Прайс-лист’!D6». В апострофах (‘…’) пишем название листа в документе, откуда мы собираемся брать данные. После восклицательного знака идет название ячейки. Ничего сложного.

Отлично! Именно этот результат мы и хотели получить. Теперь нам необходимо только изменять курс у.е. в прайс-листе, а цены в накладной будут изменяться автоматически.

Аналогично вносим формулы вычисления во все остальные ячейки.

Теперь начинаем вычислять сумму купленного товара в каждой строке. Для этого необходимо цену умножить на количество. Правильно?

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

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

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

На вкладке Главная в группе буфер обмена нажмите кнопку Копировать или нажмите сочетание клавиш CTRL + C.

Совет: Чтобы переместить или скопировать выделенный фрагмент на другой лист или в другую книгу, щелкните ярлычок другого листа или выберите другую книгу и выделите левую верхнюю ячейку области вставки.

На вкладке Главная в группе буфер обмена нажмите кнопку Вставить и нажмите кнопку Вставить значения. Или нажмите Сочетание клавиш Ctrl + Alt + V , чтобы отобразить диалоговое окно Специальная вставка.

На всех предыдущих уроках формулы и функции ссылались в пределах одного листа. Сейчас немного расширим возможности их ссылок.

Excel позволяет делать ссылки в формулах и функциях на другие листы и даже книги. Можно сделать ссылку на данные отдельного файла. Кстати в такой способ можно восстановить данные из поврежденного файла xls.

Чтение и запись данных в Excel файл из PowerShell | Windows для системных администраторов

  1. Путь к файлу книги (после знака = открывается апостроф).
  2. Имя файла книги (имя файла взято в квадратные скобки).
  3. Имя листа этой книги (после имени закрывается апостроф).
  4. Знак восклицания.
  5. Ссылка на ячейку или диапазон ячеек.

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

Ввод данных

Теперь давайте рассмотрим несколько инструментов для быстрого ввода данных.

Автозамена

Если вам часто нужно вводить какое-то словосочетание, адрес, емейл и так далее — придумайте для него короткое обозначение и добавьте в список автозамены в Параметрах:

Прогрессия

Если нужно заполнить столбец или строку последовательностью чисел или дат, введите в ячейку первое значение и затем воспользуйтесь этим инструментом:

Протягивание

Представьте, что вам нужно извлечь какие-то данные из целого столбца или переписать их в другом виде (например, фамилию с инициалами вместо полных ФИО). Задайте Excel одну ячейку с образцом — что хотите получить:

Выделите все ячейки, которые хотите заполнить по образцу, — и нажмите Ctrl+E. И магия случится (ну, в большинстве случаев).

Полезные приемы при работе с Excel из 1С (Версия 3.1)

  • Текст вместо чисел
  • Отрицательные числа там, где их быть не может
  • Числа с дробной частью там, где должны быть целые
  • Текст вместо даты
  • Разные варианты написания одного и того же значения. Например, сокращения («ЭБ» вместо «Электронная библиотека»), лишние пробелы в конце текстового значения или между словами — всего этого достаточно, чтобы превратить текстовые значения в разные и, соответственно, чтобы они обрабатывались Excel некорректно.

Без функций и формул Excel был бы одной большой таблицей предназначенной для ручного заполнения данными. Благодаря функциям и формулам он является мощным вычислительным инструментом. А полученные результаты, динамически представляет в желаемом виде (если нужно даже в графическом).

Как получить данные из Active Directory и сохранить их в книге Excel?

Рассмотрим практический пример использования доступа к данным Excel из PowerShell. Например, нам нужно для каждого пользователя в Excel файле получить информацию из Active Directory. Например, его телефон (атрибут telephoneNumber), отдел (department) и email адрес (mail).

Для получения информации об атрибутах пользователя в AD мы будем использовать командлет Get-ADUser из модуля AD PowerShell.

В результате в Excel файле для каждого пользователя были добавлены столбцы с информацией из AD.

На сайте есть статья, в которой показывается как получить данные из AD из vba макроса Excel. На мой взгляд метод с обращением к AD из Excel намного проще и гибче.

Рассмотрим еще один пример построения отчета с помощью PowerShell и Excel. Допустим, вам нужно построить Excel отчет о состоянии службы Print Spooler на всех серверах домена.

Для получения списка серверов в AD используется командлет Get-ADComputer, а для удаленной проверки статуса службы на серверах командлет WinRM Invoke-Command.

Область применения возможностей доступа из PowerShell в Excel очень широка. Начиная от простого построения отчетов, например, из Active Directory, и заканчивая возможностью создания PowerShell скриптов для актуализации данных в AD из Excel.

Работа с файлами Excel.

  • Уровень приложения (Application Layer) – запущенное приложение Excel;
  • Уровень книги (WorkBook Layer) – одновременно могут быть открыты несколько книг (документов Excel);
  • Уровень листа (WorkSheet Layer) – в каждом xlsx файле может быть несколько листов;
  • Ячейки (Range Layer) – здесь можно получить доступ к данным в конкретной ячейке или диапазонe ячеек.

Предположим, что лист, который вы пытаетесь скопировать, и книга, в которую нужно скопировать файл, содержат именованный диапазон с именем интерестратес, Excel обнаружит этот конфликт и отобразит следующее сообщение:

Источник

Как обратиться к листу excel по его номеру

Как ссылаться на рабочий лист по номеру индекса вместо имени в Excel?

Многие пользователи Excel обычно переименовывают имя рабочего листа по умолчанию в нужное. Но во многих случаях им нужно ссылаться на рабочий лист на основе его порядкового номера, а не настоящего имени. Как этого добиться? Вы можете попробовать метод в статье.

Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!

Чтобы ссылаться на рабочий лист по порядковому номеру, а не по имени в Excel, сделайте следующее.

1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте приведенный ниже код VBA в окно модуля.

Код VBA: справочный лист по номеру индекса в Excel

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

Заметки:

1. Если вам нужно указать имя определенного листа с его номером, выберите пустую ячейку и введите формулу. = ИМЯ ЛИСТА (1) прямо в панель формул, затем нажмите клавишу Enter. Смотрите скриншот:

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

=INDIRECT(«‘»&SHEETNAME(1) &»‘!A1»)

3. И если вы хотите суммировать определенный столбец на листе на основе его порядкового номера, примените эту формулу.

=SUM(INDIRECT(«‘»&SHEETNAME(1) &»‘!C2:C7»))

Источник

Как сослаться на другой лист или книгу в Excel (с примерами)

Возможность ссылаться на ячейки и диапазоны — вот что заставляет работать любой инструмент для работы с электронными таблицами. И Excel — лучший и самый мощный из существующих.

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

Хотя нет большой разницы в том, как это работает, когда вы ссылаетесь на другой лист в том же файле или ссылаетесь на совершенно отдельный файл Excel, формат этой ссылки немного меняется.

Кроме того, при обращении к другому листу или другим внешним файлам следует помнить о некоторых важных моментах.

Но волнуйтесь … ничего сумасшедшего!

К тому времени, когда вы закончите изучение этого руководства, вы будете знать все, что нужно знать о ссылках на ячейки и диапазоны в Excel (находиться в той же или другой книге).

Ссылка на ячейку на том же листе

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

Например, если я нахожусь в ячейке B1 и хочу сослаться на ячейку A1, формат будет следующим:

Когда вы это сделаете, значение в ячейке, в которой вы используете эту ссылку, будет таким же, как и в ячейке A1. И если вы внесете какие-либо изменения в ячейку A1, они будут отражены в ячейке, в которой вы использовали эту ссылку.

Ссылка на ячейку на другом листе

Если вам нужно сослаться на другой лист в той же книге, вам необходимо использовать следующий формат:

Во-первых, у вас есть имя листа, за которым следует восклицательный знак, за которым следует ссылка на ячейку.

Поэтому, если вам нужно обратиться к ячейке A1 на листе 1, вам нужно использовать следующую ссылку:

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

Итак, если вы хотите сослаться на диапазон A1: C10 на другом листе в той же книге, вам необходимо использовать приведенную ниже ссылку:

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

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

Если у вас есть пробелы или небуквенные символы (например, @. #, — и т. Д.), Вам нужно использовать имя в одинарных кавычках.

Например, если вы хотите сослаться на ячейку A1 на листе с названием «Данные о продажах», воспользуйтесь следующей ссылкой:

И в случае, если имя листа — Данные продаж, то для ссылки на ячейку A1 на этом листе вам необходимо использовать приведенную ниже ссылку:

Когда вы ссылаетесь на лист в той же книге, а затем меняете имя рабочего листа, вам не нужно беспокоиться о том, что ссылка сломается. Excel автоматически обновит эти ссылки для вас.

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

Позвольте мне показать вам лучший способ создания ссылок на ячейки в Excel.

Автоматическое создание ссылки на другой лист в той же книге

Намного лучший способ создать ссылку на ячейку на другой лист — просто указать Excel на ячейку / диапазон, на который вы хотите создать ссылку, и позволить Excel создать ее сам.

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

Ниже приведены шаги по автоматическому созданию ссылки на другой лист:

  1. Выберите ячейку в текущей книге, где вам нужна ссылка
  2. Введите формулу, пока вам не понадобится ссылка (или знак равенства, если вам просто нужна ссылка)
  3. Выберите лист, на который нужно сослаться
  4. Выберите ячейку / диапазон, на который вы хотите сослаться
  5. Нажмите Enter, чтобы получить результат формулы (или продолжайте работать с формулой)

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

Например, если у вас есть данные в ячейке A1: A10 на листе с именем «Данные продаж», и вы хотите получить сумму этих значений на текущем листе, выполните следующие действия:

  1. Введите следующую формулу в текущем листе (где вам нужен результат): = Sum (
  2. Выберите лист «Данные о продажах».
  3. Выберите диапазон, который вы хотите добавить (A1: A10). Как только вы это сделаете, Excel автоматически создаст ссылку на этот диапазон (вы можете увидеть это в строке формул).
  4. Нажмите клавишу ввода.

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

Когда вы это сделаете, вы заметите, что Excel автоматически вставляет ссылку на лист, на котором у вас есть формула. Хотя это нормально и не вредит, но в этом нет необходимости. В таком случае вы можете сохранить ссылку или удалить ее вручную.

Еще одна вещь, которую вам нужно знать при создании ссылок путем выбора листа, а затем ячейки / диапазона, заключается в том, что Excel всегда будет создавать относительная ссылка (т.е. ссылки со знаком n0 $). Это означает, что если я скопирую и вставлю формулу (одну со ссылкой на другой лист) в какую-либо другую ячейку, она автоматически откорректирует ссылку.

Вот пример, объясняющий относительные ссылки.

Предположим, я использую следующую формулу в ячейке A1 текущего листа (для ссылки на ячейку A1 в имени листа SalesData)

Теперь, если я скопирую эту формулу и вставлю ее в ячейку A2, формула изменится на:

Это происходит потому, что формула является относительной, и когда я ее копирую и вставляю, ссылки автоматически корректируются.

Если я хочу, чтобы эта ссылка всегда ссылалась на ячейку A1 на листе SalesData, мне придется использовать следующую формулу:

Знак доллара перед номером строки и столбца блокирует эти ссылки, чтобы они не менялись.

Вот подробное руководство, в котором вы можете узнать больше об абсолютных, смешанных и относительных ссылках.

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

Как сослаться на другую книгу в Excel

Когда вы ссылаетесь на ячейку или диапазон другой книги Excel, формат этой ссылки будет зависеть от того, открыта эта книга или закрыта.

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

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

Внешняя ссылка на открытую книгу

Когда дело доходит до ссылки на внешнюю открытую книгу, вам необходимо указать имя книги, имя рабочего листа и адрес ячейки / диапазона.

Ниже приведен формат, который необходимо использовать при обращении к внешней открытой книге.

Предположим, у вас есть книга «ExampleFile.xlsx», и вы хотите сослаться на ячейку A1 в Sheet1 этой книги.

Ниже приведена ссылка на это:

Если в имени внешней книги или имени листа (или обоих) есть пробелы, вам нужно добавить имя файла (в квадратных скобках) и имя листа в одинарные кавычки.

Ниже приведены примеры, в которых имена должны быть заключены в одинарные кавычки:

Как создать ссылку на другую книгу (автоматически)

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

Вместо этого просто укажите Excel в правильном направлении, и он создаст для вас эти ссылки. Это намного быстрее и меньше шансов на ошибку.

Например, если у вас есть данные в ячейке A1: A10 в книге с именем «Файл примера» на листе с именем «Данные о продажах», и вы хотите получить сумму этих значений на текущем листе, выполните следующие действия. :

  1. Введите следующую формулу в текущем листе (где вам нужен результат): = Sum (
  2. Перейдите в книгу «Файл примера».
  3. Выберите лист «Данные о продажах».
  4. Выберите диапазон, который вы хотите добавить (A1: A10). Как только вы это сделаете, Excel автоматически создаст ссылку на этот диапазон (вы можете увидеть это в строке формул).
  5. Нажмите клавишу ввода.

Это мгновенно создаст формулу с правильными ссылками.

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

Если вы хотите это изменить, вам нужно изменить ссылки вручную.

Внешняя ссылка на закрытую книгу

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

Но когда он закрыт, Excel не знает, где искать ячейки / диапазон, на которые вы ссылались.

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

Ниже приведена ссылка на ячейку A1 на листе Sheet1 в книге Example File. Поскольку этот файл не открыт, он также относится к месту, где файл сохранен.

Приведенная выше ссылка состоит из следующих частей:

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

Когда вы создаете внешнюю ссылку на открытую книгу, а затем закрываете ее, вы заметите, что ссылка автоматически изменяется. После закрытия внешней книги Excel автоматически вставляет ссылку на путь к файлу.

Влияние изменения расположения файла на ссылки

Когда вы создаете ссылку на ячейку / диапазон во внешнем файле Excel и затем закрываете его, ссылка теперь также использует путь к файлу.

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

Поэтому, если вы закроете и откроете эту книгу, она сообщит вам, что ссылка не работает, и вам нужно либо обновить ссылку, либо полностью разорвать ее. Он покажет вам подсказку, как показано ниже:

Когда вы нажмете «Обновить», отобразится еще одно приглашение, в котором вы можете выбрать параметры для редактирования ссылок (при этом появится диалоговое окно, показанное ниже).

Если вам нужно сохранить эти файлы связанными, вы можете указать новое местоположение файла, нажав «Обновить значения». Excel открывает для вас диалоговое окно, в котором вы можете указать новое расположение файла, перейдя туда и выбрав его.

Ссылка на определенное имя (в той же или внешней книге)

Когда вам нужно ссылаться на ячейки и диапазоны, лучший способ — создать определенные имена для диапазонов.

Это полезно, поскольку позволяет легко ссылаться на эти диапазоны, используя имя вместо длинного и сложного ссылочного адреса.

Например, проще использовать = SalesData вместо = [Example File.xlsx] Sheet1 ′! $ A $ 1: $ A $ 10.

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

Вот шаги, чтобы создать именованный диапазон для диапазона ячеек:

  1. Выберите все ячейки, которые вы хотите включить в именованный диапазон.
  2. Перейдите на вкладку «Формулы».
  3. Нажмите на опцию Define Name (она находится в группе Defined Names)
  4. В диалоговом окне «Новое имя» дайте этому диапазону имя (в этом примере я использую имя SalesData). Помните, что в названии не должно быть пробелов
  5. Сохраните область действия как рабочую книгу (если у вас нет веских причин сделать ее на уровне листа)
  6. Убедитесь, что ссылка на диапазон верна.
  7. Щелкните ОК.

Теперь ваш именованный диапазон создан, и вы можете использовать его вместо ссылок на ячейки с адресами ячеек.

Например, если я хочу получить сумму всех этих ячеек в диапазоне SalesData, вы можете использовать следующую формулу:

А что, если вы хотите использовать этот именованный диапазон в других листах или даже в других книгах?

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

Нет необходимости возвращаться к началу этой статьи. Позвольте мне привести вам все примеры здесь, чтобы вы поняли идею.

Именованные диапазоны уровня рабочей книги и рабочего листа: Когда вы создаете именованный диапазон на уровне книги, может быть только один диапазон с таким именем. Поэтому, если вы ссылаетесь на него из внешних книг или листов в той же книге, вам не нужно указывать имя рабочего листа (поскольку оно доступно для использования во всей книге). Если вы используете именованный диапазон уровня рабочего листа, вы сможете использовать его только на рабочем листе, и при обращении к нему вам также нужно будет указать имя рабочего листа.

Ссылка на определенное имя на том же листе или в книге

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

Например, если я хочу получить сумму всех ячеек в созданном нами именованном диапазоне (SaledData), я могу использовать следующую формулу:

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

Если вы хотите использовать его на другом листе (скажем, Sheet2), вам нужно использовать следующую формулу:

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

Ссылка на определенное имя в другой книге (открытой или закрытой)

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

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

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

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

Ниже приведен пример ссылки на именованный диапазон на уровне листа:

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

Если вы ссылаетесь на именованный диапазон в закрытой книге, вам также необходимо указать путь к файлу. Ниже приведен пример этого:

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

Как создать ссылку на именованный диапазон

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

Excel помогает вам, показывая вам список всех именованных диапазонов, которые вы создали, и позволяет вставлять их в формулы одним щелчком мыши.

Предположим, вы создали именованный диапазон SalesData, который хотите использовать в формуле для СУММИРОВАНИЯ всех значений в именованном диапазоне.

Вот как это сделать:

  1. Выберите ячейку, в которую вы хотите ввести формулу.
  2. Введите формулу до точки, в которую нужно вставить именованный диапазон.
  3. Нажмите клавишу F3 на клавиатуре. Откроется диалоговое окно «Вставить имя» со списком всех созданных вами имен.
  4. Дважды щелкните имя, которое хотите вставить.

Приведенные выше шаги вставят имя в формулу, и вы сможете продолжить работу с формулой.

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

Это все, что вам нужно знать о том, как ссылаться на другие листы или книги и как создать внешнюю ссылку в Excel.

Источник

 

GIG_ant

Пользователь

Сообщений: 3102
Регистрация: 24.12.2012

Имеем книгу с тремя листами «Петя», «Вася», «Данные». С помощью макроса нужно скопировать листы «Петя», «Вася» в другую книгу. Я это делаю так:  
Sheets(Array(«Петя», «Вася»)).Copy — возникает проблема если переименовать лист например «Петя_1» — нужно переделывать макрос.  
Можно обратится к коллекции Sheets(1) и Sheets(2) но при перемещении листа «Петя» в конец он уже становится не Sheets(1) а Sheets(3).  
Внимание вопрос: Можно ли как то железобетонно идентифицировать лист, чтобы при переименовании или перемещении его в книге все равно ссылаться именно на него ?

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

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

http://www.msoffice.nm.ru/faq/macros/module.htm#faq45

 

GIG_ant

Пользователь

Сообщений: 3102
Регистрация: 24.12.2012

{quote}{login=The_Prist}{date=17.01.2011 04:27}{thema=}{post}Можно обратиться к листу по его кодовому имени.{/post}{/quote}  
Спасибо. Это то что нужно. Хотя стоко литературы перелопатил, а про кодовое имя это нигде не упоминалось. Кстати встречный вопрос: если этот файл открыть в англоязычном екселе работать будет? (в англоязычном же помоему кодовые имена идут Sheet1 и т. д.)

 

«в англоязычном екселе работать будет?» — нет, но лучше самому попробовать ;)

 

webley

Пользователь

Сообщений: 1995
Регистрация: 01.01.1970

А по моему будут. Ведь кодовое имя листа относится к его свойствам, а при изменении версии свойства листа не должны меняться. Или я ошибаюсь7

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

Я думаю, что этот код будет работать в этом файле всюду. А вставленный в файл, созданный в англоязычном Экселе — нет. Ибо там имена листов SheetN.

 

The_Prist

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

Лучше все же переименуйте кодовые имена листов в латиницу….А про замену — меняются в соответствии с локализацией только вновь созданные листы. Имеющиеся не меняются. Не должны…:-)

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Мое мнение нет, так как откуда в англ.версии русский язык? :)  

  P.S. Сам не пробовал.  

  -=32777=-

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

А я уже и попробовал — у меня сейчас английский на рабочей машине.

 

GIG_ant

Пользователь

Сообщений: 3102
Регистрация: 24.12.2012

{quote}{login=Hugo}{date=17.01.2011 04:49}{thema=}{post}А я уже и попробовал — у меня сейчас английский на рабочей машине.{/post}{/quote}  

  У вас работает ?

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

В Вашем примере работает Sheets(Array(Лист1.Name, Лист2.Name)).Copy  
В моём, созданном сейчас файле — естественно не работает, ибо имена листов типа Sheet1

 

webley

Пользователь

Сообщений: 1995
Регистрация: 01.01.1970

{quote}{login=Hugo}{date=17.01.2011 05:00}{thema=}{post}В Вашем примере работает Sheets(Array(Лист1.Name, Лист2.Name)).Copy  
В моём, созданном сейчас файле — естественно не работает, ибо имена листов типа Sheet1{/post}{/quote}  

  Правильно. Так речь идет об уже существующих листах, а не о вновь создаваемых

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

И я о том же.  
Но учесть нужно. Ведь если например теперь из этой созданной книги брать листы — там уже имя может быть Sheet1 :)

 

The_Prist

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

{quote}{login=webley}{date=17.01.2011 05:01}{thema=Re: }{post}Правильно. Так речь идет об уже существующих листах, а не о вновь создаваемых{/post}{/quote}Я же выше написал уже: «меняются в соответствии с локализацией только вновь созданные листы»  

  Но я бы советовал все же использовать имена на латинице, т.к. это язык для VBA все же родной.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

Hugo

Пользователь

Сообщений: 23253
Регистрация: 22.12.2012

Т.е. не из этой, а из просто workbooks.add…

 

GIG_ant

Пользователь

Сообщений: 3102
Регистрация: 24.12.2012

Спасибо джентельмены. Очень помогли !

 

{quote}{login=The_Prist}{date=17.01.2011 04:27}{thema=}{post}Можно обратиться к листу по его кодовому имени. {/post}{/quote}  
Что-то у меня не получается переименовать из редактора ВБА. Выдаёт ошибку «Invalid property» и сбрасывает имя на первоначальное.  
Не подскажете, как это сделать?

 

The_Prist

Пользователь

Сообщений: 14182
Регистрация: 15.09.2012

Профессиональная разработка приложений для MS Office

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

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

clauser

Пользователь

Сообщений: 26
Регистрация: 01.01.1970

{quote}{login=The_Prist}{date=17.06.2012 07:50}{thema=}{post}А Вы не используйте в кодовом имени пробелы, тире и прочие знаки препинания.{/post}{/quote}  
Хм…  
а сейчас внезапно получилось, хотя и до этого без пробелов и прочих знаков пробовал.

 

clauser

Пользователь

Сообщений: 26
Регистрация: 01.01.1970

А как к нему обращаться по кодовому имени?  
У меня он называется сейчас Sheet12. Пробую:  
Thisworkbook.Sheets(«Sheet12») — Ошибка (Subscript out of range. Debug)  
.Sheets(Sheet12) — то же  
.Sheets(12) — то же  
.Worksheets(«Sheet12») — то же  
.Worksheets(12) — то же.

 

Юрий М

Модератор

Сообщений: 60585
Регистрация: 14.09.2012

Контакты см. в профиле

#21

17.06.2012 20:51:56

Sheet12.Activate

Многие пользователи Excel обычно переименовывают имя рабочего листа по умолчанию в нужное. Но во многих случаях им нужно ссылаться на рабочий лист на основе его порядкового номера, а не настоящего имени. Как этого добиться? Вы можете попробовать метод в статье.

Справочный лист по номеру индекса вместо имени с пользовательской функцией


Справочный лист по номеру индекса вместо имени с пользовательской функцией

Чтобы ссылаться на рабочий лист по порядковому номеру, а не по имени в Excel, сделайте следующее.

1. Нажмите другой + F11 клавиши одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.

2. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули. Затем скопируйте и вставьте приведенный ниже код VBA в окно модуля.

Код VBA: справочный лист по номеру индекса в Excel

Function SHEETNAME(number As Long) As String
    SHEETNAME = Sheets(number).Name
End Function

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

Заметки:

1. Если вам нужно указать имя определенного листа с его номером, выберите пустую ячейку и введите формулу. = ИМЯ ЛИСТА (1) прямо в панель формул, затем нажмите клавишу Enter. Смотрите скриншот:

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

=INDIRECT(«‘»&SHEETNAME(1) &»‘!A1»)

3. И если вы хотите суммировать определенный столбец на листе на основе его порядкового номера, примените эту формулу.

=SUM(INDIRECT(«‘»&SHEETNAME(1) &»‘!C2:C7»))


Статьи по теме:

  • Как ссылаться на формат и значение из другой ячейки в Excel?
  • Как сослаться или связать значение в закрытом / закрытом файле книги Excel?
  • Как удалить все ссылки на формулы, но сохранить значения в ячейках в Excel?
  • Как сохранить постоянную ссылку на ячейку формулы в Excel?
  • Как указать имя вкладки в ячейке в Excel?

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (4)


Оценок пока нет. Оцените первым!

Skip to content

Как использовать функцию ДВССЫЛ – примеры формул

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

В Microsoft Excel существует множество функций, некоторые из которых просты для понимания, другие требуют длительного обучения. При этом первые используются чаще, чем вторые. И тем не менее, функция Excel ДВССЫЛ  (INDIRECT на английском) является единственной в своем роде. Эта функция Excel не выполняет никаких вычислений, не оценивает никаких условий не ищет значения.

Итак, что такое функция ДВССЫЛ (INDIRECT) в Excel и для чего ее можно использовать? Это очень хороший вопрос, и, надеюсь, вы получите исчерпывающий ответ через несколько минут, когда закончите чтение.

Функция ДВССЫЛ в Excel — синтаксис и основные способы использования

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

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

Функция ДВССЫЛ в Excel возвращает ссылку на ячейку, используя текстовую строку. Она имеет два аргумента, первый является обязательным, а второй – нет:

ДВССЫЛ(ссылка_на_ячейку; [a1])

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

a1 — логическое значение, указывающее, какой тип ссылки содержится в первом аргументе:

  • Если значение ИСТИНА или опущено, то используется ссылка на ячейку в стиле A1.
  • Если ЛОЖЬ, то возвращается ссылка в виде R1C1.

Таким образом, ДВССЫЛ возвращает либо ссылку на ячейку, либо ссылку на диапазон.

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

Как работает функция ДВССЫЛ

Чтобы получить представление о работе функции, давайте создадим простую формулу, которая демонстрирует, как можно применить ДВССЫЛ в Excel.

Предположим, у вас есть число 5 в ячейке A1 и текст «A1» в ячейке C1. Теперь поместите формулу =ДВССЫЛ(C1) в любую другую ячейку и посмотрите, что произойдет:

  • Функция ДВССЫЛ обращается к значению в ячейке C1. Там в виде текстовой строки записан адрес «A1».
  • Функция ДВССЫЛ направляется по этому адресу в ячейку A1, откуда извлекает записанное в ней значение, то есть число 555.

Итак, в этом примере функция ДВССЫЛ преобразует текстовую строку в ссылку на ячейку.

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

Формула   ДВССЫЛ(C1&»:»&C2) извлекает адреса из указанных ячеек и превращается в =ДВССЫЛ(«A1:A5»).

В итоге мы получаем ссылку =A1:A5

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

Как использовать ДВССЫЛ в Excel — примеры формул

Как показано в приведенном выше примере, вы можете использовать функцию ДВССЫЛ, чтобы записать адрес ячейки как обычную текстовую строку и получить в результате значение этой ячейки. Однако этот простой пример — не более чем намек на возможности ДВССЫЛ.

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

Создание косвенных ссылок из значений ячеек

Как вы помните, функция ДВССЫЛ в Excel позволяет использовать стили ссылок A1 и R1C1. Обычно вы не можете использовать оба стиля на одном листе одновременно. Вы можете переключаться между двумя типами ссылок только с помощью опции «Файл» > «Параметры» > «Формулы» > R1C1 . По этой причине пользователи Excel редко рассматривают использование R1C1 в качестве альтернативного подхода к созданию ссылок.

В формуле ДВССЫЛ вы можете использовать любой тип ссылки на одном и том же листе, если хотите. Прежде чем мы двинемся дальше, давайте более подробно рассмотрим разницу между стилями ссылок A1 и R1C1.

Стиль A1 — это обычный и привычный всем нам тип адресации в Excel, который указывает сначала столбец, за которым следует номер строки. Например, B2 обозначает ячейку на пересечении столбца B и строки 2.

Стиль R1C1 является обозначает координаты ячейки наоборот – за строками следуют столбцы, и к этому нужно привыкнуть:) Например, R5C1 относится к ячейке A5, которая находится в строке 5, столбце 1 на листе. Если после буквы не следует какая-либо цифра, значит, вы имеете в виду ту же строку или столбец, в которых записана сама формула.

А теперь давайте сравним на простом примере, как функция ДВССЫЛ обрабатывает адреса вида A1 и R1C1:

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

  • Формула в ячейке D1:   =ДВССЫЛ(C1)

Это самый простой вариант. Формула обращается к ячейке C1, извлекает ее значение — текстовую строку «A2» , преобразует ее в ссылку на ячейку, переходит к ячейке A2 и возвращает ее значение, равное 456.

  • Формула в ячейке D3:  =ДВССЫЛ(C3;ЛОЖЬ)

ЛОЖЬ во втором аргументе указывает, что указанное значение (C3) следует рассматривать как ссылку на ячейку в формате R1C1, т. е. сначала идет номер строки, за которым следует номер столбца. Таким образом, наша формула ДВССЫЛ интерпретирует значение в ячейке C3 (R2C1) как ссылку на ячейку на пересечении строки 2 и столбца 1, которая как раз и является ячейкой A2.

Создание ссылок из значений ячеек и текста

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

В следующем примере формула =ДВССЫЛ(«А»&C1) возвращает значение из ячейки А1 на основе следующей логической цепочки:

Функция ДВССЫЛ объединяет элементы в первом аргументе ссылка_на_ячейку — текст «А» и значение из ячейки C1. Значение в C1 – это число 1, что в результате формирует адрес А1. Формула переходит к ячейке А1 и возвращает ее значение – 555.

Использование функции ДВССЫЛ с именованными диапазонами

Помимо создания ссылок на ячейки из текстовых строк, вы можете заставить функцию Excel ДВССЫЛ создавать ссылки на именованные диапазоны.

Предположим, у вас есть следующие именованные диапазоны на вашем листе:

  • Яблоки – С2:E2
  • Лимоны — C3: E3
  • Апельсины – C4:E4 и так далее по каждому товару.

Чтобы создать динамическую ссылку Excel на любой из указанных выше диапазонов с цифрами продаж, просто запишите его имя, скажем, в H1, и обратитесь к этой ячейке при помощи формулы =ДВССЫЛ(H1).

А теперь вы можете сделать еще один шаг и вложить эту формулу в другие функции Excel. Например, попробуем вычислить сумму и среднее значений в заданном именованном диапазоне или найти максимальную и минимальную сумму продаж в нём, как это сделано на скриншоте ниже:

  • =СУММ(ДВССЫЛ (H1))
  • =СРЗНАЧ(ДВССЫЛ (H1))
  • =МАКС(ДВССЫЛ (H1))
  • =МИН(ДВССЫЛ (H1))

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

ДВССЫЛ для ссылки на другой рабочий лист

Полезность функции Excel ДВССЫЛ не ограничивается созданием «динамических» ссылок на ячейки. Вы также можете использовать ее для формирования ссылки на другие листы.

Предположим, у вас есть важные данные на листе 1, и вы хотите получить эти данные на листе 2. На скриншоте ниже показано, как можно справиться с этой задачей.

Нам поможет формула:

=ДВССЫЛ(«‘»&A2&»‘!»&B2&C2)

Давайте разбираться, как работает эта формула.

Как вы знаете, обычным способом сослаться на другой лист в Excel является указание имени этого листа, за которым следуют восклицательный знак и ссылка на ячейку или диапазон, например Лист1!A1:С10. Так как имя листа часто содержит пробелы, вам лучше заключить его (имя, а не пробел :) в одинарные кавычки, чтобы предотвратить возможную ошибку, например,

‘Лист 1!’$A$1 или для диапазона – ‘Лист 1!’$A$1:$С$10 .

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

  • записать имя листа в одну ячейку,
  • букву столбца – в другую,
  • номер строки – в третью,  
  • объединить всё это в одну текстовую строку,
  • передать этот адрес функции ДВССЫЛ. 

Помните, что в текстовой строке вы должны заключать каждый элемент, кроме номера строки, в двойные кавычки и затем связать все элементы в единое целое с помощью оператора объединения (&).

С учетом вышеизложенного получаем шаблон ДВССЫЛ для создания ссылки на другой лист:

ДВССЫЛ («‘» & имялиста & «‘!» & имя столбца нужной ячейки & номер строки нужной ячейки )

Возвращаясь к нашему примеру, вы помещаете имя листа в ячейку A2 и вводите адреса столбца и строки в B2 и С2, как показано на скриншоте выше. В результате вы получите следующую формулу:

ДВССЫЛ(«‘»&A2&»‘!»&B2&C2)

Кроме того, обратите внимание, что если вы копируете формулу в несколько ячеек, вам необходимо зафиксировать ссылку на имя листа, используя абсолютные ссылки на ячейки, например $A$2.

Замечание.

  • Если какая-либо из ячеек, содержащих имя листа и адреса ячеек (A2, B2 и c2 в приведенной выше формуле), будет пуста, ваша формула вернет ошибку. Чтобы предотвратить это, вы можете обернуть функцию ДВССЫЛ в функцию ЕСЛИ :

ЕСЛИ(ИЛИ(A2=»»;B2=»»;C2-“”); «»; ДВССЫЛ(«‘»&A2&»‘!»&B2&C2)

  • Чтобы формула ДВССЫЛ, ссылающаяся на другой лист, работала правильно, указанный лист должен быть открыт в Экселе, иначе формула вернет ошибку #ССЫЛКА. Чтобы не видеть сообщение об ошибке, которое может портить вид вашей таблицы, вы можете использовать функцию ЕСЛИОШИБКА, которая будет отображать пустую строку при любой возникшей ошибке:

ЕСЛИОШИБКА(ДВССЫЛ(«‘»&A2&»‘!»&B2&C2); «»)

Формула ДВССЫЛ для ссылки на другую книгу Excel

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

Чтобы упростить задачу, давайте начнем с создания ссылки на другую книгу обычным способом (апострофы добавляются, если имена вашей книги и/или листа содержат пробелы):
‘[Имя_книги.xlsx]Имя_листа’!Арес_ячейки

Но, чтобы формула была универсальной, лучше апострофы добавлять всегда – лишними не будут .

Предполагая, что название книги находится в ячейке A2, имя листа — в B2, а адрес ячейки — в C2 и D2, мы получаем следующую формулу:

=ДВССЫЛ(«‘[«&$A$2&».xlsx]»&$B$2&»‘!»&C2&D2)

Поскольку вы не хотите, чтобы ячейки, содержащие имена книг и листов, изменялись при копировании формулы в другие ячейки, вы можете зафиксировать их, используя абсолютные ссылки на ячейки – $A$2 и $B$2 соответственно.

Если адреса ячеек заменить их значениями, то мы получим такой промежуточный результат:

=ДВССЫЛ(«‘[INDIRECT.xlsx]Продажи’!D3»)

Ну а итоговый результат вы видите на скриншоте ниже.

Hbc6

И теперь вы можете легко создать собственную динамическую ссылку на другую книгу Excel, используя следующий шаблон:

=ДВССЫЛ(«‘[» & Название книги & «]» & Имя листа & «‘!» & Адрес ячейки )

Примечание. Рабочая книга, на которую ссылается ваша формула, всегда должна быть открыта, иначе функция ДВССЫЛ выдаст ошибку #ССЫЛКА. Как обычно, функция ЕСЛИОШИБКА может помочь вам избежать этого:

=ЕСЛИОШИБКА(ДВССЫЛ(«‘[«&$A$2&».xlsx]»&$B$2&»‘!»&C2&D2); «»)

Использование функции Excel ДВССЫЛ чтобы зафиксировать ссылку на ячейку

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

Чтобы проиллюстрировать разницу, сделайте следующее:

  1. Введите любое значение в любую ячейку, например, число 555 в ячейку A1.
  2. Обратитесь к A1 из двух других ячеек тремя различными способами: =A1, =ДВССЫЛ(«A1») и ДВССЫЛ(С1), где в С1 записан адрес «А1».
  3. Вставьте новую строку над строкой 1.

Видите, что происходит? Ячейка с логическим оператором =А1 по-прежнему возвращает 555, потому что ее формула была автоматически изменена на =A2 после вставки строки. Ячейки с формулой ДВССЫЛ теперь возвращают нули, потому что формулы в них не изменились при вставке новой строки и они по-прежнему ссылаются на ячейку A1, которая в настоящее время пуста:

После этой демонстрации у вас может сложиться впечатление, что функция ДВССЫЛ больше мешает, чем помогает. Ладно, попробуем по-другому.

Предположим, вы хотите просуммировать значения в ячейках A2:A5, и вы можете легко сделать это с помощью функции СУММ:

=СУММ(A2:A5)

Однако вы хотите, чтобы формула оставалась неизменной, независимо от того, сколько строк было удалено или вставлено. Самое очевидное решение — использование абсолютных ссылок — не поможет. Чтобы убедиться, введите формулу =СУММ($A$2:$A$5) в какую-нибудь ячейку, вставьте новую строку, скажем, в строку 3, и увидите формулу, преобразованную в =СУММ($A$2:$A$6).

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

Решение состоит в использовании функции ДВССЫЛ, например:

=СУММ(ДВССЫЛ(«A2:A5»))

Поскольку Excel воспринимает «A1: A5» как простую текстовую строку, а не как ссылку на диапазон, он не будет вносить никаких изменений при вставке или удалении строки (строк), а также при их сортировке.

Использование ДВССЫЛ с другими функциями Excel

Помимо СУММ, ДВССЫЛ часто используется с другими функциями Excel, такими как СТРОКА, СТОЛБEЦ, АДРЕС, ВПР, СУММЕСЛИ и т. д.

Пример 1. Функции ДВССЫЛ и СТРОКА

Довольно часто функция СТРОКА используется в Excel для возврата массива значений. Например, вы можете использовать следующую формулу массива (помните, что для этого нужно нажать Ctrl + Shift + Enter), чтобы вернуть среднее значение трех наименьших чисел в диапазоне B2:B13

{=СРЗНАЧ(НАИМЕНЬШИЙ(B2:B13;СТРОКА(1:3)))}

Однако, если вы вставите новую строку в свой рабочий лист где-нибудь между строками 1 и 3, диапазон в функции СТРОКА изменится на СТРОКА(1:4), и формула вернет среднее значение четырёх наименьших чисел вместо трёх.

Чтобы этого не произошло, вставьте ДВССЫЛ в функцию СТРОКА, и ваша формула массива всегда будет оставаться правильной, независимо от того, сколько строк будет вставлено или удалено:

={СРЗНАЧ(НАИМЕНЬШИЙ(B2:B13;СТРОКА(ДВССЫЛ(«1:3»))))}

Аналогично, если нам нужно найти сумму трёх наибольших значений, можно использовать ДВССЫЛ вместе с функцией СУММПРОИЗВ.

Вот пример:

={СУММПРОИЗВ(НАИБОЛЬШИЙ(B2:B13;СТРОКА(ДВССЫЛ(«1:3»))))}

А чтобы указать переменное количество значений, которое мы хотим сосчитать, можно это число вынести в отдельную ячейку. К примеру, в С1 запишем цифру 3. Тогда формулу можно изменить таким образом:

={СУММПРОИЗВ(НАИБОЛЬШИЙ(B2:B13;СТРОКА(ДВССЫЛ(«1:»&C1))))}

Согласитесь, что получается достаточно гибкий расчёт.

Пример 2. Функции ДВССЫЛ и АДРЕС

Вы можете использовать Excel ДВССЫЛ вместе с функцией АДРЕС, чтобы получить значение в определенной ячейке на лету.

Как вы помните, функция АДРЕС используется в Excel для получения адреса ячейки по номерам строк и столбцов. Например, формула =АДРЕС(1;3) возвращает текстовую строку «$C$1», поскольку C1 — это ячейка на пересечении 1-й строки и 3-го столбца.

Чтобы создать ссылку на ячейку, вы просто встраиваете функцию АДРЕС в формулу ДВССЫЛ, например:

=ДВССЫЛ(АДРЕС(1;3))

Конечно, эта несложная формула лишь демонстрирует технику. Более сложные примеры использования функций ДВССЫЛ И АДРЕС в Excel см. в статье Как преобразовать строки в столбцы в Excel .

И вот еще несколько примеров формул в которых используется функция ДВССЫЛ, и которые могут оказаться полезными:

  • ВПР и ДВССЫЛ — как динамически извлекать данные из разных таблиц (см. пример 2).
  • Excel ДВССЫЛ и СЧЁТЕСЛИ — как использовать функцию СЧЁТЕСЛИ в несмежном диапазоне или нескольких выбранных ячейках.

Использование ДВССЫЛ для создания выпадающих списков

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

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

В ячейке А1 вы создаете простой выпадающий список с названиями имеющихся именованных диапазонов. Для второго зависимого выпадающего списка в ячейке В2 вы используете простую формулу  =ДВССЫЛ(A1), где A1 — это ячейка, в которой выбрано имя нужного именованного диапазона.

К примеру, выбрав в первом списке второй квартал, во втором списке мы видим месяцы этого квартала.

Рис9

Чтобы сделать более сложные трехуровневые меню или раскрывающиеся списки с многоуровневыми записями, вам понадобится немного более сложная формула ДВССЫЛ в сочетании с вложенной функцией ПОДСТАВИТЬ.

Подробное пошаговое руководство по использованию ДВССЫЛ с проверкой данных Excel смотрите в этом руководстве: Как создать зависимый раскрывающийся список в Excel.

Функция ДВССЫЛ Excel — возможные ошибки и проблемы

Как показано в приведенных выше примерах, функция ДВССЫЛ весьма полезна при работе со ссылками на ячейки и диапазоны. Однако не все пользователи Excel охотно принимают этот подход, в основном потому, что постоянное использование ДВССЫЛ приводит к отсутствию прозрачности формул Excel и несколько затрудняет их понимание. Функцию ДВССЫЛ сложно просмотреть и проанализировать ее работу, поскольку ячейка, на которую она ссылается, не является конечным местоположением значения, используемого в формуле. Это действительно довольно запутанно, особенно при работе с большими сложными формулами.

В дополнение к сказанному выше, как и любая другая функция Excel, ДВССЫЛ может вызвать ошибку, если вы неправильно используете аргументы функции. Вот список наиболее типичных ошибок и проблем:

Ошибка #ССЫЛКА! 

Чаще всего функция ДВССЫЛ возвращает ошибку #ССЫЛКА!  в следующих случаях:

  1. Аргумент ссылка_на_ячейку не является допустимой ссылкой Excel. Если вы пытаетесь передать функции текст, который не может обозначать ссылку на ячейку (например, «A1B0»), то формула приведет к ошибке #ССЫЛКА!. Во избежание возможных проблем проверьте аргументы функции ДВССЫЛ .
  2. Превышен предел размера диапазона. Если аргумент ссылка_на_ячейку вашей формулы ДВССЫЛ ссылается на диапазон ячеек за пределами строки  1 048 576 или столбца  16 384, вы также получите ошибку #ССЫЛКА в Excel 2007 и новее. Более ранние версии Excel игнорируют превышение этого лимита и действительно возвращают некоторое значение, хотя часто не то, что вы ожидаете.
  3. Используемый в формуле лист или рабочая книга закрыты.Если ваша формула с ДВССЫЛ адресуется на другую книгу или лист Excel, то эта другая книга или электронная таблица должны быть открыты, иначе ДВССЫЛ возвращает ошибку #ССЫЛКА! . Впрочем, это требование характерно для всех формул, которые ссылаются на другие рабочие книги Excel.

Ошибка #ИМЯ? 

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

Ошибка из-за несовпадения региональных настроек.

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

В европейских странах запятая зарезервирована как десятичный символ, а в качестве разделителя списка используется точка с запятой.

В стандартной конфигурации Windows для Северной Америки и некоторых других стран разделителем списка по умолчанию является запятая. 

В результате при копировании формулы между двумя разными языковыми стандартами Excel вы можете получить сообщение об ошибке « Мы обнаружили проблему с этой формулой… », поскольку разделитель списка, используемый в формуле, отличается от того, что установлен на вашем компьютере. Если вы столкнулись с этой ошибкой при копировании какой-либо НЕПРЯМОЙ формулы из этого руководства в Excel, просто замените все запятые (,) точками с запятой (;) (либо наоборот). В обычных формулах Excel эта проблема, естественно, не возникнет. Там Excel сам поменяет разделители исходя из ваших текущих региональных настроек.

Чтобы проверить, какие разделитель списка и десятичный знак установлены на вашем компьютере, откройте панель управления и перейдите в раздел «Регион и язык» > «Дополнительные настройки».

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

Вот еще несколько статей по той же теме:

Как удалить сразу несколько гиперссылок В этой короткой статье я покажу вам, как можно быстро удалить сразу все нежелательные гиперссылки с рабочего листа Excel и предотвратить их появление в будущем. Решение работает во всех версиях Excel,…
Как использовать функцию ГИПЕРССЫЛКА В статье объясняются основы функции ГИПЕРССЫЛКА в Excel и приводятся несколько советов и примеров формул для ее наиболее эффективного использования. Существует множество способов создать гиперссылку в Excel. Чтобы сделать ссылку на…
Гиперссылка в Excel: как сделать, изменить, удалить В статье разъясняется, как сделать гиперссылку в Excel, используя 3 разных метода. Вы узнаете, как вставлять, изменять и удалять гиперссылки на рабочих листах, а также исправлять неработающие ссылки. Гиперссылки широко используются…
Как сделать зависимый выпадающий список в Excel? Одной из наиболее полезных функций проверки данных является возможность создания выпадающего списка, который позволяет выбирать значение из предварительно определенного перечня. Но как только вы начнете применять это в своих таблицах,…

Функция ЛИСТ в 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.

ara_gorn

2 / 2 / 1

Регистрация: 07.06.2011

Сообщений: 95

1

Обращение к листу по его кодовому имени

21.12.2011, 13:06. Показов 18368. Ответов 7

Метки нет (Все метки)


Студворк — интернет-сервис помощи студентам

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

Visual Basic
1
2
3
Private Sub CommandButton1_Click()
   Лист3.Cells(1, 1) = "er"
End Sub

то все работает
а если

Visual Basic
1
2
3
4
5
Private Sub CommandButton1_Click()
  Dim s As String
  s = Лист3
  s.Cells(1, 1) = "er"
End Sub

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

Visual Basic
1
2
3
Public Sub Obrashenie_k_Listu(byval KodImiaLista as String)
  KodImiaLista.Cells(1, 1) = "er"
end sub

вариант «Sheets(imiaLista).Cells» не подходит



0



Казанский

15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

21.12.2011, 13:15

2

Второй вариант

Visual Basic
1
2
3
4
5
Private Sub CommandButton1_Click()
  Dim s As String
  s = Лист3.name
  sheets(s).Cells(1, 1) = "er"
End Sub

Это не кодовое, а «обычное» имя.

Добавлено через 5 минут
А почему бы не передавать в процедуру ссылку на сам объект, вместо имени?

Visual Basic
1
2
3
4
5
6
7
Public Sub Obrashenie_k_Listu(MyList as worksheet)
  MyList.Cells(1, 1) = "er"
end sub
 
sub test
Obrashenie_k_Listu Лист3
end sub



1



ara_gorn

2 / 2 / 1

Регистрация: 07.06.2011

Сообщений: 95

21.12.2011, 14:11

 [ТС]

3

Казанский, Любезнейший, вы видимо меня не правильно поняли, я же написал что обращение к листу по имени наподобие

Visual Basic
1
Sheets(imiaLista).Cells

не подходит.
Насколько я знаю у листа есть еще одно имя — кодовое, если посмотреть в свойствах листа, оно написано на против свойства (Name) и именно там написано ЛистN и поэтому подходит как раз таки второй вариант. [B][Но/B] если например мне нужно перечислить два листа то наверное было бы удобней что нибудь в этом роде

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub CommandButton1_Click()
  Dim s, ind As String
  dim i as Integer
    for i=1 to 2
            ind = CStr(i)
            S= "Лист" + ind
            call Obrashenie_k_Listu(S)
    next
End Sub
public sub Obrashenie_k_Listu(MyList as (затрудняюсь с типом))
   MyList.Cells(1, 1) = "er"
end Sub

Если в коде каким либо образом можно изменить тип переменной и не потерять её значение, то наверно да, можно на 100% использовать ваш второй вариант, поэтому если вы знаете как это сделать буду очень благодарен



0



Апострофф

Заблокирован

21.12.2011, 14:49

4

Не очень ясна суть проблемы, но я привык так перечислять нужные листы

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub CommandButton1_Click()
  Dim s, ind As String
  dim i as Integer
    for i=1 to 2
            'ind = CStr(i)
            S= "Лист" & i
            call Obrashenie_k_Listu(thisworkbook.worksheets(S))
    next
End Sub
public sub Obrashenie_k_Listu(MyList as worksheet)
   MyList.Cells(1, 1) = "er"
end Sub



0



ara_gorn

2 / 2 / 1

Регистрация: 07.06.2011

Сообщений: 95

21.12.2011, 16:49

 [ТС]

5

Цитата
Сообщение от Апострофф
Посмотреть сообщение

Не очень ясна суть проблемы, но я привык так перечислять нужные листы

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Private Sub CommandButton1_Click()
  Dim s, ind As String
  dim i as Integer
    for i=1 to 2
            'ind = CStr(i)
            S= "Лист" & i
            call Obrashenie_k_Listu(thisworkbook.worksheets(S))
    next
End Sub
public sub Obrashenie_k_Listu(MyList as worksheet)
   MyList.Cells(1, 1) = "er"
end Sub

Госпади, читайте внимательно, во первых код не работает, во вторых thisworkbook.worksheets(S) почти абсолютно идентично Sheets(imiaLista), а мне нужно кодовое имя листа (Name в скобках) imiaLista, т.е вы видете в редакторе Лист1(название), Лист2(название) и т.п. нужно обратиться к Лист1 а не к его названию

Добавлено через 23 минуты
Перефразирую вопрос можно ли свойство (Name) (первое из свойств листа, прошу заметить в скобках не случайно) использовать как переменную, как использовать 10-е свойство по списку Name (прошу заметить без скобок) я знаю, и мне это не подходит



0



Казанский

15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

21.12.2011, 16:55

6

Не хотите по имени — обращайтесь по номеру

Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Sub CommandButton1_Click()
  dim i as Long 'забудьте об Integer ;)
  for i=1 to 2
      call Obrashenie_k_Listu(i) 'или Obrashenie_k_Listu i
  next
End Sub
 
public sub Obrashenie_k_Listu(MyList as long)
   sheets(MyList).Cells(1, 1) = "er"
end Sub

Номера листов соответствуют порядку, в котором расположены их ярлычки.
Коллекция sheets включает как рабочие листы, так и листы других типов (диаграммы, листы макросов).
Для обращения только к рабочим листам следует использовать коллекцию worksheets.

А кодовое имя оставьте в покое, оно нужно только в очень специфических случаях.
На другом форуме (ссылки на другие форумы давать нельзя ) выяснили, что кодовое имя может меняться, если файл открывают в иноязычной версии Excel!



0



2 / 2 / 1

Регистрация: 07.06.2011

Сообщений: 95

21.12.2011, 18:17

 [ТС]

7

Я знаю что можно и по номеру, но мне нужно обратиться именно к свойству (Name), по поводу других языков, можно написать Sheet1 вместо лист1, думаю вряд ли кто то будет использовать китайский перевод, кроме того номер листа изменится если его переместить, лучше уж тогда к свойству Name обращаться.
У меня и есть специфический случай, нужно обратиться именно к (Name), если вдруг кому то захочется переименовать лист макрос работать не будет

Добавлено через 12 минут
тут либо принудительно проверять соответствует ли свойство Name заданному образцу если не обнаружен лист, то проверить значение ячеек всех листов, либо запретить каким то образом изменение свойства Name…



0



kuklp

1702 / 189 / 19

Регистрация: 20.11.2011

Сообщений: 281

21.12.2011, 19:11

8

А так:

Visual Basic
1
2
3
4
5
Private Sub CommandButton1_Click()
  Dim s As Worksheet
  Set s = Лист3
  s.Cells(1, 1) = "er"
End Sub



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

21.12.2011, 19:11

8

Содержание

  • Ссылка на ячейку на том же листе
  • Ссылка на ячейку на другом листе
  • Как сослаться на другую книгу в Excel
  • Внешняя ссылка на открытую книгу
  • Внешняя ссылка на закрытую книгу
  • Ссылка на определенное имя (в той же или внешней книге)

Возможность ссылаться на ячейки и диапазоны — вот что заставляет работать любой инструмент для работы с электронными таблицами. И Excel — лучший и самый мощный из существующих.

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

Хотя нет большой разницы в том, как это работает, когда вы ссылаетесь на другой лист в том же файле или ссылаетесь на совершенно отдельный файл Excel, формат этой ссылки немного меняется.

Кроме того, при обращении к другому листу или другим внешним файлам следует помнить о некоторых важных моментах.

Но волнуйтесь … ничего сумасшедшего!

К тому времени, когда вы закончите изучение этого руководства, вы будете знать все, что нужно знать о ссылках на ячейки и диапазоны в Excel (находиться в той же или другой книге).

Давайте начнем!

Ссылка на ячейку на том же листе

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

Например, если я нахожусь в ячейке B1 и хочу сослаться на ячейку A1, формат будет следующим:

= A1

Когда вы это сделаете, значение в ячейке, в которой вы используете эту ссылку, будет таким же, как и в ячейке A1. И если вы внесете какие-либо изменения в ячейку A1, они будут отражены в ячейке, в которой вы использовали эту ссылку.

Ссылка на ячейку на другом листе

Если вам нужно сослаться на другой лист в той же книге, вам необходимо использовать следующий формат:

Sheet_name! Cell_address

Во-первых, у вас есть имя листа, за которым следует восклицательный знак, за которым следует ссылка на ячейку.

Поэтому, если вам нужно обратиться к ячейке A1 на листе 1, вам нужно использовать следующую ссылку:

= Лист1! A1

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

Имя_листа! Первая_ячейка: Последняя_ячейка

Итак, если вы хотите сослаться на диапазон A1: C10 на другом листе в той же книге, вам необходимо использовать приведенную ниже ссылку:

= Лист1! A1: C10

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

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

Если у вас есть пробелы или небуквенные символы (например, @,!, #, — и т. Д.), Вам нужно использовать имя в одинарных кавычках.

Например, если вы хотите сослаться на ячейку A1 на листе с названием «Данные о продажах», воспользуйтесь следующей ссылкой:

= "Данные о продажах"! A1

И в случае, если имя листа — Данные продаж, то для ссылки на ячейку A1 на этом листе вам необходимо использовать приведенную ниже ссылку:

= "Данные о продажах"! A1

Когда вы ссылаетесь на лист в той же книге, а затем меняете имя рабочего листа, вам не нужно беспокоиться о том, что ссылка сломается. Excel автоматически обновит эти ссылки для вас.

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

Позвольте мне показать вам лучший способ создания ссылок на ячейки в Excel.

Автоматическое создание ссылки на другой лист в той же книге

Намного лучший способ создать ссылку на ячейку на другой лист — просто указать Excel на ячейку / диапазон, на который вы хотите создать ссылку, и позволить Excel создать ее сам.

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

Ниже приведены шаги по автоматическому созданию ссылки на другой лист:

  1. Выберите ячейку в текущей книге, где вам нужна ссылка
  2. Введите формулу, пока вам не понадобится ссылка (или знак равенства, если вам просто нужна ссылка)
  3. Выберите лист, на который нужно сослаться
  4. Выберите ячейку / диапазон, на который вы хотите сослаться
  5. Нажмите Enter, чтобы получить результат формулы (или продолжайте работать с формулой)

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

Например, если у вас есть данные в ячейке A1: A10 на листе с именем «Данные продаж», и вы хотите получить сумму этих значений на текущем листе, выполните следующие действия:

  1. Введите следующую формулу в текущем листе (где вам нужен результат): = Sum (
  2. Выберите лист «Данные о продажах».
  3. Выберите диапазон, который вы хотите добавить (A1: A10). Как только вы это сделаете, Excel автоматически создаст ссылку на этот диапазон (вы можете увидеть это в строке формул).
  4. Нажмите клавишу ввода.

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

Когда вы это сделаете, вы заметите, что Excel автоматически вставляет ссылку на лист, на котором у вас есть формула. Хотя это нормально и не вредит, но в этом нет необходимости. В таком случае вы можете сохранить ссылку или удалить ее вручную.

Еще одна вещь, которую вам нужно знать при создании ссылок путем выбора листа, а затем ячейки / диапазона, заключается в том, что Excel всегда будет создавать относительная ссылка (т.е. ссылки со знаком n0 $). Это означает, что если я скопирую и вставлю формулу (одну со ссылкой на другой лист) в какую-либо другую ячейку, она автоматически откорректирует ссылку.

Вот пример, объясняющий относительные ссылки.

Предположим, я использую следующую формулу в ячейке A1 текущего листа (для ссылки на ячейку A1 в имени листа SalesData)

= Данные о продажах! A1

Теперь, если я скопирую эту формулу и вставлю ее в ячейку A2, формула изменится на:

= Данные о продажах! A1

Это происходит потому, что формула является относительной, и когда я ее копирую и вставляю, ссылки автоматически корректируются.

Если я хочу, чтобы эта ссылка всегда ссылалась на ячейку A1 на листе SalesData, мне придется использовать следующую формулу:

= SalesData! $ A $ 1

Знак доллара перед номером строки и столбца блокирует эти ссылки, чтобы они не менялись.

Вот подробное руководство, в котором вы можете узнать больше об абсолютных, смешанных и относительных ссылках.

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

Когда вы ссылаетесь на ячейку или диапазон другой книги Excel, формат этой ссылки будет зависеть от того, открыта эта книга или закрыта.

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

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

Внешняя ссылка на открытую книгу

Когда дело доходит до ссылки на внешнюю открытую книгу, вам необходимо указать имя книги, имя рабочего листа и адрес ячейки / диапазона.

Ниже приведен формат, который необходимо использовать при обращении к внешней открытой книге.

= '[FileName] SheetName! CellAddress

Предположим, у вас есть книга «ExampleFile.xlsx», и вы хотите сослаться на ячейку A1 в Sheet1 этой книги.

Ниже приведена ссылка на это:

= [ExampleFile.xlsx] SalesData! A1

Если в имени внешней книги или имени листа (или обоих) есть пробелы, вам нужно добавить имя файла (в квадратных скобках) и имя листа в одинарные кавычки.

Ниже приведены примеры, в которых имена должны быть заключены в одинарные кавычки:

= '[Example File.xlsx] SalesData'! A1 = '[ExampleFile.xlsx] Данные о продажах'! A1 = '[Пример файла.xlsx] Данные о продажах'! A1

Как создать ссылку на другую книгу (автоматически)

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

Вместо этого просто укажите Excel в правильном направлении, и он создаст для вас эти ссылки. Это намного быстрее и меньше шансов на ошибку.

Например, если у вас есть данные в ячейке A1: A10 в книге с именем «Файл примера» на листе с именем «Данные о продажах», и вы хотите получить сумму этих значений на текущем листе, выполните следующие действия. :

  1. Введите следующую формулу в текущем листе (где вам нужен результат): = Sum (
  2. Перейдите в книгу «Файл примера».
  3. Выберите лист «Данные о продажах».
  4. Выберите диапазон, который вы хотите добавить (A1: A10). Как только вы это сделаете, Excel автоматически создаст ссылку на этот диапазон (вы можете увидеть это в строке формул).
  5. Нажмите клавишу ввода.

Это мгновенно создаст формулу с правильными ссылками.

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

Если вы хотите это изменить, вам нужно изменить ссылки вручную.

Внешняя ссылка на закрытую книгу

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

Но когда он закрыт, Excel не знает, где искать ячейки / диапазон, на которые вы ссылались.

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

Ниже приведена ссылка на ячейку A1 на листе Sheet1 в книге Example File. Поскольку этот файл не открыт, он также относится к месту, где файл сохранен.

= 'C:  Users  sumit  Desktop  [Example File.xlsx] Sheet1'! $ A $ 1

Приведенная выше ссылка состоит из следующих частей:

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

Когда вы создаете внешнюю ссылку на открытую книгу, а затем закрываете ее, вы заметите, что ссылка автоматически изменяется. После закрытия внешней книги Excel автоматически вставляет ссылку на путь к файлу.

Влияние изменения расположения файла на ссылки

Когда вы создаете ссылку на ячейку / диапазон во внешнем файле Excel и затем закрываете его, ссылка теперь также использует путь к файлу.

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

Поэтому, если вы закроете и откроете эту книгу, она сообщит вам, что ссылка не работает, и вам нужно либо обновить ссылку, либо полностью разорвать ее. Он покажет вам подсказку, как показано ниже:

Когда вы нажмете «Обновить», отобразится еще одно приглашение, в котором вы можете выбрать параметры для редактирования ссылок (при этом появится диалоговое окно, показанное ниже).

Если вам нужно сохранить эти файлы связанными, вы можете указать новое местоположение файла, нажав «Обновить значения». Excel открывает для вас диалоговое окно, в котором вы можете указать новое расположение файла, перейдя туда и выбрав его.

Ссылка на определенное имя (в той же или внешней книге)

Когда вам нужно ссылаться на ячейки и диапазоны, лучший способ — создать определенные имена для диапазонов.

Это полезно, поскольку позволяет легко ссылаться на эти диапазоны, используя имя вместо длинного и сложного ссылочного адреса.

Например, проще использовать = SalesData вместо = [Example File.xlsx] Sheet1 ′! $ A $ 1: $ A $ 10.

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

Вот шаги, чтобы создать именованный диапазон для диапазона ячеек:

  1. Выберите все ячейки, которые вы хотите включить в именованный диапазон.
  2. Перейдите на вкладку «Формулы».
  3. Нажмите на опцию Define Name (она находится в группе Defined Names)
  4. В диалоговом окне «Новое имя» дайте этому диапазону имя (в этом примере я использую имя SalesData). Помните, что в названии не должно быть пробелов
  5. Сохраните область действия как рабочую книгу (если у вас нет веских причин сделать ее на уровне листа)
  6. Убедитесь, что ссылка на диапазон верна.
  7. Щелкните ОК.

Теперь ваш именованный диапазон создан, и вы можете использовать его вместо ссылок на ячейки с адресами ячеек.

Например, если я хочу получить сумму всех этих ячеек в диапазоне SalesData, вы можете использовать следующую формулу:

= СУММ (SalesData)

А что, если вы хотите использовать этот именованный диапазон в других листах или даже в других книгах?

Ты можешь!

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

Нет необходимости возвращаться к началу этой статьи. Позвольте мне привести вам все примеры здесь, чтобы вы поняли идею.

Именованные диапазоны уровня рабочей книги и рабочего листа: Когда вы создаете именованный диапазон на уровне книги, может быть только один диапазон с таким именем. Поэтому, если вы ссылаетесь на него из внешних книг или листов в той же книге, вам не нужно указывать имя рабочего листа (поскольку оно доступно для использования во всей книге). Если вы используете именованный диапазон уровня рабочего листа, вы сможете использовать его только на рабочем листе, и при обращении к нему вам также нужно будет указать имя рабочего листа.

Ссылка на определенное имя на том же листе или в книге

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

Например, если я хочу получить сумму всех ячеек в созданном нами именованном диапазоне (SaledData), я могу использовать следующую формулу:

= СУММ (SaledData)

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

Если вы хотите использовать его на другом листе (скажем, Sheet2), вам нужно использовать следующую формулу:

= СУММ (Лист1! $ A $ 1: $ A $ 10)

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

= СУММ ('Лист 1'! $ A $ 1: $ A $ 10)

Ссылка на определенное имя в другой книге (открытой или закрытой)

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

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

= СУММ (ExampleFile.xlsx! SalesData)

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

= СУММ ('Пример File.xlsx'! SalesData)

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

Ниже приведен пример ссылки на именованный диапазон на уровне листа:

= СУММ ('[Пример файла.xlsx] Sheet1'! SalesData)

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

Если вы ссылаетесь на именованный диапазон в закрытой книге, вам также необходимо указать путь к файлу. Ниже приведен пример этого:

= СУММ ('C:  Users  sumit  Desktop  Example File.xlsx'! SalesData)

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

Как создать ссылку на именованный диапазон

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

Excel помогает вам, показывая вам список всех именованных диапазонов, которые вы создали, и позволяет вставлять их в формулы одним щелчком мыши.

Предположим, вы создали именованный диапазон SalesData, который хотите использовать в формуле для СУММИРОВАНИЯ всех значений в именованном диапазоне.

Вот как это сделать:

  1. Выберите ячейку, в которую вы хотите ввести формулу.
  2. Введите формулу до точки, в которую нужно вставить именованный диапазон.
  3. Нажмите клавишу F3 на клавиатуре. Откроется диалоговое окно «Вставить имя» со списком всех созданных вами имен.
  4. Дважды щелкните имя, которое хотите вставить.

Приведенные выше шаги вставят имя в формулу, и вы сможете продолжить работу с формулой.

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

Это все, что вам нужно знать о том, как ссылаться на другие листы или книги и как создать внешнюю ссылку в Excel.

Надеюсь, вы нашли этот урок полезным.

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Как обратить цвета рисунка в word
  • Как обратить текст в excel
  • Как обратить таблицу excel
  • Как обратить столбец в excel
  • Как обратить выделение excel

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии