Эксель смещение как использовать

Обновлено: 08.07.2024

В этой статье описаны синтаксис формулы и использование функции СМЕЩ в Microsoft Excel.

Описание

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

Синтаксис

Аргументы функции СМЕЩ описаны ниже.

Смещ_по_строкам Обязательный. Количество строк, которые требуется отсчитать вверх или вниз, чтобы левая верхняя ячейка результата ссылалась на нужную ячейку. Например, если в качестве значения аргумента "смещ_по_строкам" задано число 5, это означает, что левая верхняя ячейка возвращаемой ссылки должна быть на пять строк ниже, чем указано в аргументе "ссылка". Значение аргумента "смещ_по_строкам" может быть как положительным (для ячеек ниже начальной ссылки), так и отрицательным (выше начальной ссылки).

Смещ_по_столбцам Обязательный. Количество столбцов, которые требуется отсчитать влево или вправо, чтобы левая верхняя ячейка результата ссылалась на нужную ячейку. Например, если в качестве значения аргумента "смещ_по_столбцам" задано число 5, это означает, что левая верхняя ячейка возвращаемой ссылки должна быть на пять столбцов правее, чем указано в аргументе "ссылка". Значение "смещ_по_столбцам" может быть как положительным (для ячеек справа от начальной ссылки), так и отрицательным (слева от начальной ссылки).

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

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

Примечания

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

Функция СМЕЩ фактически не передвигает никаких ячеек и не меняет выделения; она только возвращает ссылку. Функция СМЕЩ может использоваться с любой функцией, в которой ожидается аргумент типа "ссылка". Например, с помощью формулы СУММ(СМЕЩ(C2;1;2;3;1)) вычисляется суммарное значение диапазона, состоящего из трех строк и одного столбца и расположенного одной строкой ниже и двумя столбцами правее ячейки C2.

Пример

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

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

Синтаксис

выражение.Offset (RowOffset, ColumnOffset)

выражение: переменная, представляющая объект Range.

Параметры

Имя Обязательный или необязательный Тип данных Описание
RowOffset Необязательный Variant Количество строк (положительное, отрицательное или 0 (нулевое)), на которое нужно сместить диапазон. Положительные значения соответствуют смещению вниз, а отрицательные — вверх. Значение по умолчанию равно 0.
ColumnOffset Необязательный Variant Количество столбцов (положительное, отрицательное или 0 (нулевое)), на который нужно сместить диапазон. Положительные значения соответствуют смещению вправо, а отрицательные — влево. Значение по умолчанию равно 0.

Пример

В этом примере активируется ячейка, расположенная на три столбца вправо и на три строки вниз от активной ячейки на листе Sheet1.

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

Если RowOffset или ColumnOffset равны нулю, их можно опустить.

Выбрать ячейку D1

Выбрать ячейку A5

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Функция СМЕЩ в Excel используется, когда вы хотите получить ссылку, которая смещается на указанное число строк и столбцов от начального положения.

Что возвращает функция

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

Синтаксис

Аргументы функции

Основной принцип работы функции

Функция СМЕЩ , пожалуй, самая запутанная функция в Excel.

Давайте разберем ее работу на простом примере игры в шахматы. В шахматах есть фигура Ладья.


Источник фото: Wikipedia

По правилам игры в шахматы, Ладья может ходить только вправо, влево, вниз и вверх. Фигура не может передвигаться по диагонали.

Функция OFFSET (СМЕЩ) в Excel. Как использовать?

Теперь давайте представим, что нашей Ладье нужно переместиться не строго влево или вправо, а на ячейку, находящуюся по диагонали от изначальной позиции. Что мы будем делать этом случае?

Функция OFFSET (СМЕЩ) в Excel. Как использовать?

Правильно, мы будем использовать несколько шагов, для того чтобы привести Ладью к цели. Тот же принцип действует и в функции OFFSET (СМЕЩ) .

Рассмотрим перемещение Ладьи на примере в Excel. Мы хотим начать с ячейки D5 (где находится ладья), а затем перейти на две строки вниз и два столбца вправо и извлечь значение из ячейки. Для этого будем использовать формулу:

Функция OFFSET (СМЕЩ) в Excel. Как использовать?

Как вы видите формула по нашему примеру выглядит так:

На примере выше мы рассмотрели функцию OFFSET (СМЕЩ) с тремя аргументами. Но есть еще два необязательных аргумента, которые можно использовать.

Давайте рассмотрим простой пример:

OFFSET - СМЕЩ - в Excel

Теперь посмотрим, как это сделать, используя формулу OFFSET (СМЕЩ) :

Надеюсь, теперь у вас есть базовое понимание использования функции OFFSET (СМЕЩ) в Excel.

Примеры использования функции СМЕЩ в Excel

Пример 1. Ищем последнюю заполненную ячейку в колонке

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

Пример 2. Создаем динамический выпадающий список с автоматическим дополнением новых данных

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

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

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

Как сделать такой список:

  • Выберите ячейку, в которой вы хотите создать выпадающий список;
  • Нажмите на вкладку Data => Data Tools => Data Validation;
  • В диалоговом окне Data Validation, в разделе Настройки выберите List из выпадающего списка;
  • В параметрах Source укажите формулу =OFFSET(A1,0,0,COUNT(A:A),1) или =СМЕЩ(A1;0;0;СЧЁТ(A:A);1)
  • Нажмите ОК

Как эта формула работает:

Дополнительная информация

Альтернативы функции OFFSET (СМЕЩ) в Excel

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

Функция INDIRECT (ДВССЫЛ) в Excel используется когда у вас есть ссылки в виде текста, и вы хотите получить значения из этих ссылок.

Что возвращает функция

Функция возвращает ссылку, заданную текстовой строкой.

Синтаксис

Аргументы функции

Дополнительная информация

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

Пример 1. Используем ссылку на ячейку для получения значения

Функция ДВССЫЛ получает ссылку на ячейку как исходные данные и возвращает значение ячейки по этой ссылке (как показано в примере ниже):

INDIRECT (ДВССЫЛ) в Excel - 1

Формула в ячейке С1:

Функция получает ссылку на ячейку (в двойных кавычках) и возвращает значение этой ячейки, которая равна “123”.

Если в данном случае вы введете в ячейку С1 формулу “=A1” или “=$A$1”, то она выдаст вам тот же результат, что находится в ячейке А1. Но если вы вставите в таблице строку выше, вы можете заметить, что ссылка на ячейку будет автоматически изменена.

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

Пример 2. Получаем данные по ссылке на ячейку

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

INDIRECT (ДВССЫЛ) в Excel - 2

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

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

Пример 3. Используем комбинацию текстового и числового значений в функции INDIRECT (ДВССЫЛ)

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

Функция INDIRECT (ДВССЫЛ) в Excel - 3

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

Пример 4. Ссылаемся на диапазон ячеек с помощью функции INDIRECT (ДВССЫЛ)

С помощью функции вы можете ссылаться на диапазон ячеек.

Используя функцию SUM (СУММ) и INDIRECT (ДВССЫЛ) вместе, вы можете рассчитать сумму, а также максимальные и минимальные значения диапазона.

Функция INDIRECT (ДВССЫЛ) в Excel - 4

Пример 5. Ссылаемся на именованный диапазон значений с использованием функции INDIRECT (ДВССЫЛ)

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

Например, представим что у вас есть оценки по 5 студентам по трем предметам как показано ниже:

Функция INDIRECT (ДВССЫЛ) в Excel - 5

Зададим для следующих ячеек названия:

  • B2:B6: Математика
  • C2:C6: Физика
  • D2:D6: Химия

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

Функция INDIRECT (ДВССЫЛ) в Excel

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

Функция INDIRECT (ДВССЫЛ) в Excel

Пример 6. Создаем зависимый выпадающий список с помощью INDIRECT (ДВССЫЛ)

C помощью этой функции вы можете создавать зависимый выпадающий список.

Функция Indirect (ДВССЫЛ) в Excel

функция INDIRECT (ДВССЫЛ) в Excel

Теперь, для создания зависимого выпадающего списка:

Функция INDIRECT (ДВССЫЛ) в Excel. Как использовать?

  • Выделите ячейку E2 (или любую другую ячейку, в которой вы хотите сделать зависимый выпадающий список);
  • Кликните по вкладке “Data” -> “Data Validation”;
  • На вкладке “Настройки” в разделе “Allow” выберите List;
  • В разделе “Source” укажите ссылку: =INDIRECT($D$2) или =ДВССЫЛ($D$2) ;
  • Нажмите ОК

функция INDIRECT (ДВССЫЛ) в Excel

Читайте также: