Книга: Магия таблиц. 100+ приемов ускорения работы в Excel (и немного в Google Таблицах)
Назад: Что такое формула и функция в Excel
Дальше: Функции рабочего листа Excel

Ссылки на ячейки в формулах

Ссылаться на ячейку в формуле можно следующими способами.
• Щелкнуть мышкой на эту ячейку (в том числе предварительно перейдя на другой лист, щелкнув на его ярлык, если нужное значение хранится не на одном листе с формулой).
• Ввести ее адрес с клавиатуры (не забывайте, что номера столбцов — это латинские буквы).
• Выделить соседнюю с формулой ячейку с помощью клавиш со стрелками (это удобно, если вам нужно сослаться на ячейку, которая находится недалеко от ячейки с формулой). Когда вы вводите формулу, есть два режима редактирования: в одном нажатие стрелок на клавиатуре перемещает курсор в самой формуле, во втором — выделяет ячейки. Переключаются эти режимы клавишей F2 (^ + U).
Когда вы вводите формулу, ссылки на ячейки или диапазоны выделяются цветами в самой формуле и теми же цветами на листе.

 

 

То же самое происходит не только при первом вводе формулы, но и если войти в режим редактирования (нажать F2 или щелкнуть двойным щелчком по ячейке с формулой или щелкнуть на строку формул).
АБСОЛЮТНЫЕ И ОТНОСИТЕЛЬНЫЕ ССЫЛКИ
Обычная ссылка на ячейку, которая формируется по умолчанию и выглядит как A1, — это относительная ссылка.
Она так называется, потому что это ссылка не на конкретный адрес, а на ячейку относительно расположения формулы. Такие ссылки смещаются вместе с формулами.
Если мы ссылаемся из ячейки C2 на A2 — это ссылка на ячейку на два столбца левее от формулы, а не на ячейку с адресом A2.

 

 

Потому что стоит скопировать и вставить или протянуть (мышкой за правый нижний угол ячейки) такую формулу вниз в следующую строку — и ссылка на A2 превратится в A3. А если скопировать формулу вправо — то в B2. Это по-прежнему будет ссылка на ячейку на два столбца левее от формулы, потому она и называется относительной.

 

 

Относительные ссылки очень удобны во многих случаях. Когда вам нужно производить расчеты с данными из каждой соответствующей строки, ссылки на эти данные сами меняются при протягивании формулы вниз.
Достаточно сослаться на соседнюю ячейку B2 из столбца C в той же второй строке и затем протянуть вниз — в каждой строке ссылка будет меняться, соответственно, в формуле будет использоваться значение из той же строки, в которой находится формула (а не B2 для всех строк).

 

 

А вот если нам необходимо ссылаться на ячейку с определенным адресом, куда бы мы ни протягивали формулу (например, если для разных строк нам нужно брать одну и ту же ставку налога из ячейки D1), то нужно использовать абсолютные ссылки. Для этого достаточно нажать F4 ( + T) после того, как вы щелкнули на ячейку в формуле (или после того, как установили курсор на ссылку в формуле). Появятся доллары у номеров строки и столбца — это означает, что ссылка стала абсолютной, а не относительной. То есть ссылкой на ячейку с адресом D1, а не на ячейку справа и сверху от формулы.

 

 

Эту формулу следует читать так (с точки зрения ссылок): произведение ячейки слева от формулы (B3) и ячейки D1 ($D$1).
И после протягивания формулы вниз по всей таблице она по-прежнему будет содержать ссылки на ячейку слева от себя (в каждом случае это будут разные ячейки) и на ячейку D1.

 

 

Если после нажатия F4 и формирования абсолютной ссылки нажать эту клавишу еще один или два раза, то ссылка поменяется на так называемую смешанную: закрепится только номер строки или только номер столбца.
Ссылка вида A$1 — это ссылка на первую строку, а вот ссылка на столбец остается относительной, то есть будет меняться при копировании формулы с такой ссылкой. Аналогично $A1 — это ссылка на столбец A, а номер строки будет меняться при перемещении формулы.
В следующем примере нам нужно перемножить возможные варианты объема производства (из строки 2) и оптовых цен (из столбца B) — чтобы на пересечении получить сценарии по выручке для каждой пары параметров.

 

 

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

 

 

Абсолютные ссылки тоже не подойдут: с ними мы в любых ячейках будем умножать одни и те же ячейки C2 и B3 друг на друга. Это пример ситуации, когда нужны смешанные ссылки, ведь нам нужно перемножать разные (относительная часть ссылки) числа из столбца B (абсолютная часть ссылки) с разными (относительная) числами из строки 2 (абсолютная).

 

 

ССЫЛКИ НА СТОЛБЦЫ И СТРОКИ ЦЕЛИКОМ
В Excel (и в Google Таблицах) можно ссылаться не только на отдельные ячейки и диапазоны, но и на столбцы и строки целиком.
Вот как выглядят такие ссылки:
2:2 — относительная ссылка на всю вторую строку;
$3:$3 — абсолютная ссылка на всю третью строку;
A: E — относительная ссылка на пять столбцов, от A до E, целиком;
$B:$B — абсолютная ссылка на весь столбец B.
Плюс в том, что все строки будут учитываться в формуле. Минус в том, что попадут лишние, то есть мы априори ссылаемся на миллион с лишним строк.
Чтобы сослаться на строки/столбцы целиком при вводе формулы, можно либо ввести их вручную, либо щелкнуть мышкой на заголовок столбца/строки (номер).

 

 

ИМЕНОВАННЫЕ ДИАПАЗОНЫ
Файл с примерами: Имена диапазонов.xlsx
В Excel и Google Таблицах диапазонам можно присваивать имена. После того как диапазону присвоено имя, на него можно ссылаться в формулах, и такие формулы читаются легче (=Налог*Выручка, а не =B2*$E$1). Кроме того, имена помогают в некоторых особых ситуациях.
В Excel можно задать имя следующими способами.
Выделить ячейку/диапазон и ввести имя в поле, которое так и называется — «Имя», находится оно слева от строки формул.

 

 

Если в диапазоне есть заголовки и вы хотите их использовать в качестве имен, используйте команду «Создать из выделенного» на вкладке «Формулы» (Formulas — Create from Selection). Можно также использовать сочетание клавиш Ctrl + Shift + F3.

 

 

Еще можно пользоваться диспетчером имен — это окно вызывается сочетанием Ctrl + F3, там можно и создавать имена, и просматривать/изменять/удалять существующие.

 

 

В Google Таблицах имена настраиваются в меню «Данные» — «Настроить именованные диапазоны» (Data — Named ranges). Можно задавать и в поле «Имя» слева от строки формул, как в Excel.

 

 

Есть некоторые ограничения:
• имя может быть длиной до 255 символов;
• имена могут начинаться с буквы, нижнего подчеркивания, обратной косой черты;
• пробелы в именах (как и разные символы, математические операторы) не допускаются, но можно использовать вместо них нижнее подчеркивание.
После того как мы задали имя, мы можем использовать его в формулах.
Имена отображаются в подсказке с функциями. Так, если у нас есть имя "Ставка_роялти", то оно появится в списке при вводе первых букв. Достаточно будет щелкнуть на него или выделить и нажать Tab.

 

 

Если мы присвоили имя одной ячейке, можно ссылаться на нее (это будет словно абсолютная ссылка), не переживая, что ссылка «поедет» (как это было бы с относительной ссылкой).

 

 

Если же имя присвоено целому диапазону, то мы можем:
• ссылаться на значение из этого диапазона в той же строке/столбце (своего рода относительная ссылка) в версиях Excel до 2019 включительно или ссылаться сразу на весь диапазон в Excel 2021 / Microsoft 365;

 

 

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

 

 

Имена могут действовать на уровне всей книги (то есть вы можете ссылаться на данные по имени с любого листа) — и это более частый вариант. Либо на уровне одного рабочего листа.
Область действия задается в одноименном поле в диалоговом окне «Вставка имени». Книга — это вся книга Excel, а далее идут названия листов.

 

 

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

 

 

Поле «Имя» можно использовать для быстрой навигации в книге: можно выбрать имя из списка. После выбора соответствующий диапазон будет выделен.

 

 

А еще можно просто ввести в этом поле адрес любой ячейки и нажать Enter, чтобы к ней перейти. Кстати, это пригодится, чтобы посмотреть, какие данные есть в скрытой ячейке (и даже отредактировать их).
Также перейти к любой ячейке можно с помощью окна «Переход» (вызывается клавишей F5).

 

Итак, в чем польза имен:
• формулы легче воспринимать;
• имена можно выбирать из выпадающего списка при вводе формул;
• быстрый переход к именованному диапазону через поле «Имя»;
• абсолютная ссылка на ячейку/диапазон без необходимости использовать знаки доллара.
Кроме того, они будут отображаться при уменьшении масштаба до того уровня, когда смогут поместиться поверх соответствующих диапазонов.

 

 

ССЫЛКА НА ПЕРЕСЕЧЕНИЕ ДИАПАЗОНОВ
Файл с примером: Пересечение диапазонов.xlsx
Это не то, с чем вы, скорее всего, столкнетесь на практике. Но для понимания, что любой символ в формулах (пока он не взят в кавычки — тогда он становится текстом, а не частью формулы; об этом мы подробно поговорим в разделе про текст) что-то может значить, стоит обсудить пробел. Это символ пересечения диапазонов. Если у вас в формуле есть два диапазона, между которыми стоит пробел, то это будет ссылка на общие ячейки этих диапазонов.
Например, если присвоить всем диапазонам в этой таблице имена (это можно сделать с помощью команды «Создать из выделенного» на вкладке ленты «Формулы»)…

 

 

…то можно будет ссылаться на показатель и квартал как на пересечение двух диапазонов:
=Материалы март

 

 

Конечно, пробел будет работать и с обычными диапазонами, а не именами. Повторимся: это вряд ли будет использоваться часто, но это хороший пример того, что любой символ в формулах может что-то значить, пока не взят в кавычки.
В Google Таблицах оператор пересечения диапазонов не работает.
ССЫЛКИ НА ДРУГИЕ ЛИСТЫ
Ссылка на другой лист в Excel и Google Таблицах выглядит так: название листа, восклицательный знак, ссылка на диапазон (ячейку).
'название листа'!ссылка на диапазон
Название листа отделяется от ячейки или диапазона восклицательным знаком. Название листа берется в апострофы:
'Лемур'!A1:B300 — это ссылка на диапазон A1:B300 на листе «Выручка».
'Продажи Лемур'!D7 — это ссылка на ячейку D7 на листе «Продажи Лемур».
Если название листа состоит из одного слова (если в нем нет пробелов, дефисов, плюсов — таких символов, которые могут быть частью формулы в Excel и интерпретироваться соответственно) — апострофы не обязательны.
То есть будут работать оба варианта:
'Лемур'!A1:B300
Лемур! A1:B300
А такой вариант ссылки работать не будет:
Продажи Лемур! D7
Необязательно вводить ссылки на другие листы вручную. Достаточно щелкнуть на ярлык листа при вводе формулы, чтобы перейти на него, и далее выделить ячейку или диапазон. Ссылка сформируется автоматически.
На именованный диапазон (если область его действия — вся книга) можно ссылаться с других листов без имени.
Также на таблицы (смотрите соответствующую главу ) можно ссылаться с других листов по имени таблицы и названию столбца без упоминания названия листа.
ССЫЛКА НА НЕСКОЛЬКО ЛИСТОВ В ФОРМУЛЕ
Файл с примером: Несколько листов.xlsx
А что, если нужно обработать данные с нескольких листов формулой? Например, сложить несколько ячеек с группы листов или рассчитать среднее значение?
Чтобы ссылаться на группу листов в формулах, нужно указать их через двоеточие — первый и последний (в том порядке, в каком идут их ярлыки). А затем — как в обычной ссылке на другой лист — восклицательный знак и адрес ячейки/диапазона.
Допустим, нам нужна сумма чисел из ячеек B2 на листах от «Москва» до «Казань». Формула получится такой:
=СУММ(Москва: Казань! B2)
Обратите внимание, что, если после ввода формулы порядок листов поменяется (вы переместите какие-то листы), формула не изменится: она по-прежнему будет суммировать данные с группы листов, первый (левый ярлык) из которых называется «Москва», а последний (самый правый ярлык) — «Казань».
То есть если между этими листами добавится новый, то данные с него тоже попадут в расчет. Если, наоборот, какой-то из листов окажется левее «Москвы» или «Казани», то есть покинет эту группу, данные с него не будут суммироваться.
P. S. Если в названии хотя бы одного из крайних листов есть пробелы/дефисы, то нужно будет взять оба названия в апострофы (как и в случае со ссылкой на один лист с этими символами):
=СУММ('Санкт-Петербург: Казань'!B2:B4)

 

 

ССЫЛКА НА ЛИСТЫ, У КОТОРЫХ В НАЗВАНИИ ЕСТЬ ОБЩИЕ ТЕКСТ/СЛОВО
Файл с примером: Ссылка на листы с символом подстановки.xlsx
Допустим, у вас в книге есть много листов с названиями «Доходы январь», «Доходы февраль», «Расходы январь», «Расходы февраль» или другие группы листов, в которых есть определенные слова. Например, с городами — по два листа (доходы и расходы) на каждый город.

 

 

И вам нужно обработать данные на всех листах, например, с расходами — во всех городах. Или с символами HR в названии. Или с определенным городом. И эти листы могут идти не по порядку.
Тогда можно использовать символ подстановки — звездочку: на месте этого символа может быть любой текст (в том числе нулевой длины, то есть ничего).
Символы подстановки (звездочка — любой текст любой длины; знак вопроса — один любой символ) используются в Excel не только для решения этой задачи — они работают в некоторых функциях и инструментах.
Символы подстановки работают по умолчанию в следующих функциях:
— ВПР / VLOOKUP и ПОИСКПОЗ / MATCH;
— СУММЕСЛИ (МН) / SUMIF(S), СЧЁТЕСЛИ(МН) / COUNTIF(S), СРЗНАЧЕСЛИ(МН) / AVERAGEIF(S);
— COUNTUNIQUEIFS;
— в функциях баз данных: БДСУММ / DSUM, ДСРЗНАЧ / DAVERAGE, БСЧЁТ / DCOUNT, БСЧЁТА / DCOUNTA и других;
— ПОИСК / SEARCH.

В новых функциях ПОИСКПОЗX / XMATCH и ПРОСМОТРX / XLOOKUP символы подстановки по умолчанию не работают! Но у них есть аргумент «режим_сопоставления» (match_mode), в котором имеются следующие варианты:
0 — точный поиск (по умолчанию), символы подстановки не работают;
1 — ближайшее большее значение (или точное совпадение);
-1 — ближайшее меньшее значение (или точное совпадение);
2 — точный поиск с символами подстановки.
Вводим формулу с нужным словом и звездочкой — там, где может встречаться любой текст. Не забудьте про апострофы! После ввода формулы в ней появятся отдельные ссылки на все листы, в которых есть слово «Доходы». Обратите внимание, что если такие листы идут подряд, то будет ссылка на несколько листов сразу (в нашем примере 'Доходы Москва: Доходы Санкт-Петербург', а если отдельно — то будут отдельные ссылки ('Доходы Казань').

 

 

Увы, такая ссылка не будет динамической, то есть, если в структуре книги будут изменения и появятся новые листы с нужным словом, они не попадут в формулу. Ссылка со звездочкой трансформируется в конкретные ссылки на отдельные листы в момент ввода формулы.
Это работает только в Excel.
СТИЛЬ ССЫЛОК R1C1
В Excel есть два стиля ссылок — описанный выше (и более распространенный) стиль A1 и стиль R1C1, в котором и столбцы, и строки обозначаются числами.
Изменить стиль ссылок можно в параметрах Excel:
Формулы — Стиль ссылок R1C1
(Formulas — R1C1 reference style).

 

 

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

 

 

Если вам прислали книгу Excel и в ней используется неудобный вам стиль ссылок (например, вы видите числа в качестве номеров столбцов, а привыкли к стилю A1) — просто поменяйте его в «Параметрах».

В Google Таблицах нет стиля ссылок R1C1.
Стиль ссылок R1C1 поможет с пониманием относительных и абсолютных ссылок. Вот так выглядит формула со ссылками стиля A1 (с включенной опцией «Показать формулы», с которой в ячейках видны сами формулы).

 

 

Одна часть этой формулы — ссылка на ячейку слева, на ячейку в столбце B в строке с формулой. Такая ссылка называется относительной. Она выглядит как B2, B3 и так далее.
Вторая часть — $F$1 — абсолютная ссылка на адрес F1 (ставку роялти 8%).
А так эта же формула выглядит со стилем R1C1.

 

 

Здесь обе ссылки выглядят одинаково во всех строках:
=RC[-1]*R1C6
Относительная ссылка — та, которая была разной в каждой строке при стиле A1, — здесь везде выглядит одинаково. И тут хорошо отражена ее суть, ведь RC[-1] — это ссылка на ячейку в той же строке (R без квадратных скобок) в столбце левее (-1 после буквы C).
А абсолютная ссылка выглядит так: R — номер строки, C — номер столбца. В нашем примере R1C6 — первая строка, шестой столбец, или ячейка F1 (при стиле ссылок A1).
ОБЪЕДИНЕНИЕ КНИГ EXCEL (ССЫЛКИ НА ДРУГИЕ КНИГИ В ФОРМУЛАХ)
В Excel можно ссылаться на другие книги в формулах (создавать связи).
Эти ссылки выглядят по-разному в зависимости от того, открыт источник (исходная книга) или нет.
Ссылка на другую (открытую в настоящий момент) книгу Excel выглядит так:
'[Имя_книги]Название_листа'!Диапазон
Например:

 

 

Ссылка на другую (закрытую в настоящий момент) книгу Excel:
'Путь на диске[Имя_книги]Название_листа'!Диапазон
Например:

 

 

Чтобы просмотреть, какие есть ссылки на другие книги, нажмите на кнопку «Изменить связи» (Edit Links) на вкладке «Данные».

 

 

 

Здесь можно:
• обновить связь (Update Values), чтобы использовались актуальные данные из источника;
• поменять книгу-источник (Change Source), если он переехал в другую папку на диске;
• открыть книгу-источник (Open Source) или разорвать связь (Break Link); после разрыва связи ссылки на книгу-источник превратятся в значения и обновляться, соответственно, больше не будут.
Кнопка «Запрос на обновление связей» (Startup Prompt) вызовет небольшое диалоговое окно, в котором можно настроить поведение Excel при открытии книги.

 

 

ФУНКЦИЯ IMPORTRANGE В GOOGLE ТАБЛИЦАХ
В отличие от Excel, в Google Таблицах нельзя ссылаться на другие файлы прямо в формулах и таким образом связывать их — мы можем сослаться только на другой лист в той же таблице. Для связывания таблиц используется функция IMPORTRANGE.
Для загрузки вам нужно иметь доступ к этому файлу — на редактирование или на комментирование/просмотр (без запрета на скачивание и копирование данных: если он включен, то не получится импортировать данные и с помощью IMPORTRANGE).
У функции два аргумента — ссылка на таблицу и ссылка на диапазон.
Ссылка на таблицу может указываться в двух видах — полная (со ссылкой на лист или без нее — не имеет значения, лист в любом случае определяется вторым аргументом функции) или ключ (набор символов после общей части ссылки docs.google.com/spreadsheets/d/).
=IMPORTRANGE(ссылка на файл; ссылка на лист и диапазон)
Пример нескольких ссылок на файл, которые будут работать одинаково в функции IMPORTRANGE (первый аргумент):
•  (полная ссылка с указанием номера листа);
•  (полная ссылка, но без листа; повторимся: в любом случае лист будет указываться отдельно во втором аргументе, в ссылке его отсутствие или присутствие ни на что не влияет);
• 1wWrgdcpIPeS3THHjZzkcPGMqwFCDHSTVlE4j1G6Dppc (только ключ).
Второй аргумент — диапазон — может задаваться несколькими способами:
• без указания названия листа (например, "B2:E"; в таком случае данные будут тянуться из диапазона B2:E с первого по порядку листа в исходном документе);
• с указанием названия листа: "Продажи! A2:D" или "Продажи! A1:L20";
• с использованием имени диапазона, если в исходном файле есть таковые. Например, "Налог".
И первый, и второй аргумент могут задаваться как в кавычках прямо в функции, так и в ячейках, на которые вы будете ссылаться из функции.
Обратите внимание на следующие нюансы.
Функция IMPORTRANGE выводит массив данных, а не одну ячейку (в частном случае она может возвращать и одну ячейку, если вы указали такой диапазон во втором аргументе, но в большинстве случаев она все же используется для загрузки таблиц, а не одиночных ячеек). Это значит, что справа и снизу от него должно быть достаточно пустых ячеек для вывода этих данных. Если в ячейках есть данные, то функция не сможет их «перезаписать» выводимым массивом и вернет ошибку.
IMPORTRANGE возвращает только значения и числовые форматы, но не переносит стилевое форматирование — заливку, шрифт и так далее. Форматирование нужно настраивать отдельно в каждой таблице.
Не обязательно сначала выводить данные из другого файла, а потом их обрабатывать — их можно обработать, используя IMPORTRANGE как аргумент другой функции: например, сразу получить среднее из диапазона в другом файле с помощью СРЗНАЧ, аргументом которой будет IMPORTRANGE. Тогда не нужно будет выводить сами данные в конечной таблице.
Назад: Что такое формула и функция в Excel
Дальше: Функции рабочего листа Excel