При использовании формул поиска в Excel (таких как VLOOKUP, XLOOKUP или INDEX / MATCH) цель состоит в том, чтобы найти совпадающее значение и получить это значение (или соответствующее значение в той же строке / столбце) в качестве результата.
Но в некоторых случаях вместо получения значения может потребоваться, чтобы формула возвращала адрес ячейки значения.
Это может быть особенно полезно, если у вас большой набор данных и вы хотите узнать точное положение результата формулы поиска.
В Excel есть несколько функций, которые предназначены именно для этого.
В этом уроке я покажу вам, как вы можете найти и вернуть адрес ячейки вместо значения в Excel по простым формулам.
Поиск и возврат адреса ячейки с помощью функции АДРЕС
Функция АДРЕС в Excel предназначена именно для этого.
Он берет строку и номер столбца и дает вам адрес ячейки этой конкретной ячейки.
Ниже приведен синтаксис функции АДРЕС:
= АДРЕС (row_num, column_num, [abs_num], [a1], [sheet_text])
куда:
- row_num: номер строки ячейки, для которой вы хотите получить адрес ячейки
- column_num: номер столбца ячейки, для которой вы хотите адрес
- [abs_num]: необязательный аргумент, в котором вы можете указать, хотите ли вы, чтобы ссылка на ячейку была абсолютной, относительной или смешанной.
- [a1]: необязательный аргумент, в котором вы можете указать, хотите ли вы использовать ссылку в стиле R1C1 или в стиле A1.
- [sheet_text]: необязательный аргумент, в котором вы можете указать, хотите ли вы добавить имя листа вместе с адресом ячейки или нет.
Теперь давайте возьмем пример и посмотрим, как это работает.
Предположим, что существует набор данных, показанный ниже, где у меня есть идентификатор сотрудника, его имя и его отдел, и я хочу быстро узнать адрес ячейки, в которой находится отдел для идентификатора сотрудника KR256.
Ниже приведена формула, которая сделает это:
= АДРЕС (ПОИСКПОЗ ("KR256"; A1: A20,0); 3)
В приведенной выше формуле я использовал функцию ПОИСКПОЗ, чтобы узнать номер строки, содержащей данный идентификатор сотрудника.
И поскольку отдел находится в столбце C, я использовал 3 в качестве второго аргумента.
Эта формула отлично работает, но у нее есть один недостаток: она не будет работать, если вы добавите строку над набором данных или столбец слева от набора данных.
Это связано с тем, что, когда я указываю второй аргумент (номер столбца) как 3, он жестко запрограммирован и не изменится.
Если я добавлю какой-либо столбец слева от набора данных, формула будет считать 3 столбца с начала рабочего листа, а не с начала набора данных.
Итак, если у вас есть фиксированный набор данных и вам нужна простая формула, это сработает.
Но если вам нужно, чтобы это было более надежным, используйте тот, который описан в следующем разделе.
Поиск и возврат адреса ячейки с помощью функции CELL
Хотя функция АДРЕС была создана специально, чтобы дать вам ссылку на ячейку с указанным номером строки и столбца, есть еще одна функция, которая также делает это.
Это называется функцией ЯЧЕЙКА (и она может дать вам гораздо больше информации о ячейке, чем функция АДРЕС).
Ниже приведен синтаксис функции ЯЧЕЙКА:
= ЯЧЕЙКА (тип_информации; [ссылка])
куда:
- info_type: информация о нужной ячейке. Это может быть адрес, номер столбца, имя файла и т. Д.
- [Справка]: Необязательный аргумент, в котором вы можете указать ссылку на ячейку, для которой вам нужна информация о ячейке.
Теперь давайте посмотрим на пример, в котором вы можете использовать эту функцию для поиска и получения ссылки на ячейку.
Предположим, у вас есть набор данных, показанный ниже, и вы хотите быстро узнать адрес ячейки, в которой находится отдел для идентификатора сотрудника KR256.
Ниже приведена формула, которая сделает это:
= ЯЧЕЙКА ("адрес", ИНДЕКС ($ A $ 1: $ D $ 20, ПОИСКПОЗ ("KR256", $ A $ 1: $ A $ 20,0), 3))
Приведенная выше формула довольно проста.
Я использовал формулу ИНДЕКС в качестве второго аргумента, чтобы получить отдел для идентификатора сотрудника KR256.
А затем просто обернул его в функцию CELL и попросил вернуть адрес ячейки с этим значением, которое я получаю из формулы ИНДЕКС.
Теперь вот секрет того, почему это работает — формула ИНДЕКС возвращает значение подстановки, когда вы даете ей все необходимые аргументы. Но в то же время он также вернет ссылку на эту результирующую ячейку.
В нашем примере формула ИНДЕКС возвращает «Продажи» в качестве результирующего значения, но в то же время вы также можете использовать ее, чтобы дать вам ссылку на ячейку этого значения вместо самого значения.
Обычно, когда вы вводите формулу ИНДЕКС в ячейку, она возвращает значение, потому что это именно то, что от нее ожидается. Но в сценариях, где требуется ссылка на ячейку, формула ИНДЕКС даст вам ссылку на ячейку.
В этом примере это именно то, что он делает.
И самое лучшее в использовании этой формулы — это то, что она не привязана к первой ячейке на листе. Это означает, что вы можете выбрать любой набор данных (который может находиться в любом месте рабочего листа), использовать формулу ИНДЕКС для регулярного поиска, и он все равно даст вам правильный адрес.
А если вы вставите дополнительную строку или столбец, формула изменится соответствующим образом, чтобы дать вам правильный адрес ячейки.
Итак, это две простые формулы, которые вы можете использовать для поиска и найти и вернуть адрес ячейки вместо значения в Excel.
Надеюсь, вы нашли этот урок полезным.
Перейти к содержимому
Адреса ячеек в программе «Excel» могут отображаться в двух разных форматах:
1) Самый популярный и для большинства пользователей наиболее удобный формат адреса ячеек — это буквы латинского алфавита с цифрами, где названия столбцов обозначаются буквами, а названия строк цифрами. И, соответственно, ячейки имеют адреса по названию пересечения столбца и строки.
2) Второй формат — относительные ссылки, менее популярен и востребован. Этот формат имеет вид R1C1. Такой формат отображения показывает адреса ячеек используемых в формуле относительно выбранной ячейки, в которую записывается формула. Многие пользователи, увидев такой формат отображения адресов ячеек, впадают ступор и пытаются перевести вид адресов в привычный буквенно цифровой вид.
Как перевести формат адресов ячеек R1C1 (RC) в обычный вид: A1; B1; C1 и т.д.
Для изменения вида адресов следует выполнить следующую последовательность действий:
- войти во вкладку «Файл»;
- выбрать меню «Параметры»;
- далее выбрать вкладку «Формулы»;
- во вкладке «Формулы» убрать «галочку» (флажок) напротив параметра «Стиль ссылок R1C1»;
- нажать кнопку «Ok».
После выполнения указанной последовательности действий адреса ячеек приобретут привычный вид : A1; B1; C1 и т.д.
Slow Пользователь Сообщений: 77 |
Добрый вечер дамы и господа Прикрепленные файлы
|
JeyCi Пользователь Сообщений: 3357 |
#2 15.06.2015 19:01:04
если я правильно поняла вас — с учётом O2 —
как вариант суммы — (для зелёного диапазона) Изменено: JeyCi — 15.06.2015 19:03:17 чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок — обратитесь к собеседнику на ВЫ — ответ на ваш вопрос получите — а остальное вас не касается (п.п.п. на форумах) |
||||
Slow Пользователь Сообщений: 77 |
#3 15.06.2015 19:11:41 большое спасибо , немного видоизменил вашу формулу до
|
||
gling Пользователь Сообщений: 4024 |
#4 15.06.2015 19:23:03 Может использовать такую формулу?
В зависимости от числа введенного в ячейку М2 просуммируется столбец. Или еще нужно выбирать и строки суммирования? Каков конечный результат, что хотите суммировать? Прикрепленные файлы
Изменено: gling — 15.06.2015 19:49:23 |
||
JeyCi Пользователь Сообщений: 3357 |
#5 15.06.2015 19:46:30
намного (нерационально) усложнили …
«-1» т.к. смещаетесь от 1-го столбца — значит его в расчёт не берём… если будете смещаться от 2-го — соответственно «-2″… ну или «-СТОЛБЕЦ(A3)» — столбец ячейки, откуда смещаетесь
p.s. но вам виднее… успехов Изменено: JeyCi — 15.06.2015 19:52:26 чтобы не гадать на кофейной гуще, кто вам отвечает и после этого не совершать кучу ошибок — обратитесь к собеседнику на ВЫ — ответ на ваш вопрос получите — а остальное вас не касается (п.п.п. на форумах) |
||||||
Slow Пользователь Сообщений: 77 |
#6 15.06.2015 20:59:25
будете смеяться но именно так и сделал, как у вас написано , большое спасибо
|
||||
Slow Пользователь Сообщений: 77 |
#7 15.06.2015 21:04:27
большое спасибо за проявленный интерес, задача стояла относительно вычислений стандартных отклонений/вариаций/ковариаций/корреляций …к большому сожалению или счастью совесть не позволяет выставлять полный файл для решение, поэтому выкладываю лишь то, с чем справиться не могу С уважением Я) |
||
Excel для Microsoft 365 Excel для Интернета Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
ссылка на ячейку указывает на ячейку или диапазон ячеек листа. Ссылки можно применять в формула, чтобы указать приложению Microsoft Office Excel на значения или данные, которые нужно использовать в формуле.
Ссылки на ячейки можно использовать в одной или нескольких формулах для указания на следующие элементы:
-
данные из одной или нескольких смежных ячеек на листе;
-
данные из разных областей листа;
-
данные на других листах той же книги.
Например:
Формула |
Объект ссылки |
Возвращаемое значение |
---|---|---|
=C2 |
Ячейка C2 |
Значение в ячейке C2 |
=A1:F4 |
Ячейки A1–F4 |
Значения во всех ячейках, но после ввода формулы необходимо нажать сочетание клавиш Ctrl+Shift+Enter. Примечание. Эта функция не работает в Excel в Интернете. |
=Актив-Пассив |
Ячейки с именами «Актив» и «Пассив» |
Разность значений в ячейках «Актив» и «Пассив» |
{=Неделя1+Неделя2} |
Диапазоны ячеек «Неделя1» и «Неделя2» |
Сумма значений в диапазонах ячеек «Неделя1» и «Неделя2» как формула массива |
=Лист2!B2 |
Ячейка B2 на листе Лист2 |
Значение в ячейке B2 на листе Лист2 |
-
Щелкните ячейку, в которую нужно ввести формулу.
-
В строка формул введите = (знак равенства).
-
Выполните одно из следующих действий.
-
Создайте ссылку на одну или несколько ячеек. Чтобы создать ссылку, выделите ячейку или диапазон ячеек на том же листе.
Можно переместить границу выделения, перетащив границу ячейки, или перетащить угол границы, чтобы расширить выделение.
-
Создайте ссылку на определенное имя. Чтобы создать ссылку на определенное имя, выполните одно из указанных ниже действий.
-
Введите имя.
-
Нажмите клавишу F3, выберите имя в поле Вставить имя и нажмите кнопку ОК.
Примечание: Если в углу цветной границы нет квадратного маркера, значит это ссылка на именованный диапазон.
-
-
-
Выполните одно из указанных ниже действий.
-
Если требуется создать ссылку в отдельной ячейке, нажмите клавишу ВВОД.
-
Если требуется создать ссылку в формула массива (например A1:G4), нажмите сочетание клавиш CTRL+SHIFT+ВВОД.
Ссылка может быть одной ячейкой или диапазоном, а формула массива может возвращать одно или несколько значений.
Примечание: Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
-
На ячейки, расположенные на других листах в той же книге, можно сослаться, вставив перед ссылкой на ячейку имя листа с восклицательным знаком (!). В приведенном ниже примере функция СРЗНАЧ используется для расчета среднего значения в диапазоне B1:B10 на листе «Маркетинг» в той же книге.
1. Ссылка на лист «Маркетинг».
2. Ссылка на диапазон ячеек с B1 по B10 включительно.
3. Ссылка на лист, отделенная от ссылки на диапазон значений.
-
Щелкните ячейку, в которую нужно ввести формулу.
-
В строка формул введите = (знак равенства) и формулу, которую нужно использовать.
-
Щелкните ярлычок листа, на который нужно сослаться.
-
Выделите ячейку или диапазон ячеек, на которые нужно сослаться.
Примечание: Если имя другого листа содержит знаки, не являющиеся буквами, необходимо заключить имя (или путь) в одинарные кавычки (‘).
Также можно скопировать и вставить ссылку на ячейку, а затем воспользоваться командой Ссылки на ячейки для создания ссылки на ячейку. Эту команду можно использовать в указанных ниже случаях.
-
Для отображения важных данных в более заметном месте. Предположим, существует книга с множеством листов, на каждом из которых есть ячейка, отображающая итоговые данные по другим ячейкам этого листа. Чтобы выделить такие итоговые ячейки, можно создать ссылки на них с первого листа книги, которые позволят увидеть итоговые данные из всей книги на ее первом листе.
-
Для упрощения ссылок на ячейки между листами и книгами. Команда Ссылки на ячейки автоматически вставляет выражения с правильным синтаксисом.
-
Выделите ячейку с данными, ссылку на которую необходимо создать.
-
Нажмите клавиши CTRL+C или перейдите на вкладку Главная и в группе Буфер обмена щелкните Копировать .
-
Нажмите клавиши CTRL+V или перейдите на вкладку Главная и в группе Буфер обмена щелкните Вставить .
По умолчанию при вставке скопированных данных отображается кнопка Параметры вставки .
-
Нажмите кнопку Параметры вставки, а затем выберите пункт Вставить связь .
-
Дважды щелкните ячейку, содержащую формулу, которую нужно изменить. Каждая ячейка или диапазон ячеек в Excel, на которые ссылается формула, выделяются своим цветом.
-
Выполните одно из указанных ниже действий.
-
Чтобы переместить ссылку на ячейку или диапазон, перетащите цветную границу к новой ячейке или диапазону.
-
Чтобы изменить количество ячеек в диапазоне, перетащите угол границы.
-
В строка формул выделите ссылку в формуле и введите новую ссылку .
-
Нажмите клавишу F3, выберите имя в поле Вставить имя и нажмите кнопку ОК.
-
-
Нажмите клавишу ВВОД или, в случае формула массива, клавиши CTRL+SHIFT+ВВОД.
Примечание: Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
Если после ввода ссылки на ячейку в формулу задается имя для ссылки на ячейку, иногда требуется заменить существующие ссылки на ячейки определенными именами.
-
Выполните одно из указанных ниже действий.
-
Выделите диапазон ячеек, содержащих формулы, в которых необходимо заменить ссылки на ячейки определенными именами.
-
Чтобы заменить ссылки именами во всех формулах листа, выделите одну пустую ячейку.
-
-
На вкладке Формулы в группе Определенные имена щелкните стрелку рядом с кнопкой Присвоить имя и выберите команду Применить имена.
-
Выберите имена в поле Применить имена, а затем нажмите кнопку ОК.
-
Выделите ячейку с формулой.
-
В строке формул строка формул выделите ссылку, которую нужно изменить.
-
Для переключения между типами ссылок нажмите клавишу F4.
Дополнительные сведения о разных типах ссылок на ячейки см. в статье Обзор формул.
-
Щелкните ячейку, в которую нужно ввести формулу.
-
В строка формул введите = (знак равенства).
-
Выделите ячейку или диапазон ячеек на том же листе. Можно переместить границу выделения, перетащив границу ячейки, или перетащить угол границы, чтобы расширить выделение.
-
Выполните одно из указанных ниже действий.
-
Если требуется создать ссылку в отдельной ячейке, нажмите клавишу ВВОД.
-
Если требуется создать ссылку в формула массива (например A1:G4), нажмите сочетание клавиш CTRL+SHIFT+ВВОД.
Ссылка может быть одной ячейкой или диапазоном, а формула массива может возвращать одно или несколько значений.
Примечание: Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
-
На ячейки, расположенные на других листах в той же книге, можно сослаться, вставив перед ссылкой на ячейку имя листа с восклицательным знаком (!). В приведенном ниже примере функция СРЗНАЧ используется для расчета среднего значения в диапазоне B1:B10 на листе «Маркетинг» в той же книге.
1. Ссылка на лист «Маркетинг».
2. Ссылка на диапазон ячеек с B1 по B10 включительно.
3. Ссылка на лист, отделенная от ссылки на диапазон значений.
-
Щелкните ячейку, в которую нужно ввести формулу.
-
В строка формул введите = (знак равенства) и формулу, которую нужно использовать.
-
Щелкните ярлычок листа, на который нужно сослаться.
-
Выделите ячейку или диапазон ячеек, на которые нужно сослаться.
Примечание: Если имя другого листа содержит знаки, не являющиеся буквами, необходимо заключить имя (или путь) в одинарные кавычки (‘).
-
Дважды щелкните ячейку, содержащую формулу, которую нужно изменить. Каждая ячейка или диапазон ячеек в Excel, на которые ссылается формула, выделяются своим цветом.
-
Выполните одно из указанных ниже действий.
-
Чтобы переместить ссылку на ячейку или диапазон, перетащите цветную границу к новой ячейке или диапазону.
-
Чтобы изменить количество ячеек в диапазоне, перетащите угол границы.
-
В строка формул выделите ссылку в формуле и введите новую ссылку.
-
-
Нажмите клавишу ВВОД или, в случае формула массива, клавиши CTRL+SHIFT+ВВОД.
Примечание: Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.
-
Выделите ячейку с формулой.
-
В строке формул строка формул выделите ссылку, которую нужно изменить.
-
Для переключения между типами ссылок нажмите клавишу F4.
Дополнительные сведения о разных типах ссылок на ячейки см. в статье Обзор формул.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
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 автоматически изменяет ссылки на ячейки при вставке новых или удалении существующих строк или столбцов на листе. Чтобы этого не произошло, вы можете использовать функцию ДВССЫЛ для работы с конкретными адресами ячеек, которые в любом случае должны оставаться неизменными.
Чтобы проиллюстрировать разницу, сделайте следующее:
- Введите любое значение в любую ячейку, например, число 555 в ячейку A1.
- Обратитесь к A1 из двух других ячеек тремя различными способами: =A1, =ДВССЫЛ(«A1») и ДВССЫЛ(С1), где в С1 записан адрес «А1».
- Вставьте новую строку над строкой 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, ДВССЫЛ может вызвать ошибку, если вы неправильно используете аргументы функции. Вот список наиболее типичных ошибок и проблем:
Ошибка #ССЫЛКА!
Чаще всего функция ДВССЫЛ возвращает ошибку #ССЫЛКА! в следующих случаях:
- Аргумент ссылка_на_ячейку не является допустимой ссылкой Excel. Если вы пытаетесь передать функции текст, который не может обозначать ссылку на ячейку (например, «A1B0»), то формула приведет к ошибке #ССЫЛКА!. Во избежание возможных проблем проверьте аргументы функции ДВССЫЛ .
- Превышен предел размера диапазона. Если аргумент ссылка_на_ячейку вашей формулы ДВССЫЛ ссылается на диапазон ячеек за пределами строки 1 048 576 или столбца 16 384, вы также получите ошибку #ССЫЛКА в Excel 2007 и новее. Более ранние версии Excel игнорируют превышение этого лимита и действительно возвращают некоторое значение, хотя часто не то, что вы ожидаете.
- Используемый в формуле лист или рабочая книга закрыты.Если ваша формула с ДВССЫЛ адресуется на другую книгу или лист Excel, то эта другая книга или электронная таблица должны быть открыты, иначе ДВССЫЛ возвращает ошибку #ССЫЛКА! . Впрочем, это требование характерно для всех формул, которые ссылаются на другие рабочие книги Excel.
Ошибка #ИМЯ?
Это самый очевидный случай, подразумевающий, что в названии функции есть какая-то ошибка.
Ошибка из-за несовпадения региональных настроек.
Также распространенная проблема заключается не в названии функции ДВССЫЛ, а в различных региональных настройках для разделителя списка.
В европейских странах запятая зарезервирована как десятичный символ, а в качестве разделителя списка используется точка с запятой.
В стандартной конфигурации Windows для Северной Америки и некоторых других стран разделителем списка по умолчанию является запятая.
В результате при копировании формулы между двумя разными языковыми стандартами Excel вы можете получить сообщение об ошибке « Мы обнаружили проблему с этой формулой… », поскольку разделитель списка, используемый в формуле, отличается от того, что установлен на вашем компьютере. Если вы столкнулись с этой ошибкой при копировании какой-либо НЕПРЯМОЙ формулы из этого руководства в Excel, просто замените все запятые (,) точками с запятой (;) (либо наоборот). В обычных формулах Excel эта проблема, естественно, не возникнет. Там Excel сам поменяет разделители исходя из ваших текущих региональных настроек.
Чтобы проверить, какие разделитель списка и десятичный знак установлены на вашем компьютере, откройте панель управления и перейдите в раздел «Регион и язык» > «Дополнительные настройки».
Надеемся, что это руководство пролило свет для вас на использование ДВССЫЛ в Excel. Теперь, когда вы знаете ее сильные стороны и ограничения, пришло время попробовать и посмотреть, как функция ДВССЫЛ может упростить ваши задачи в Excel. Спасибо за чтение!
Вот еще несколько статей по той же теме: