Автоматическое изменение диапазона в excel

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

Как в Excel сделать автоматическое изменение диапазона

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

Сформируйте отчет по доходности нашего объекта инвестирования, так как показано на рисунке:

Доходы.

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

  1. Выберите инструмент «Формулы»-«Определенные имена»-«Присвоить имя».
  2. Заполните поля диалогового окна «Создание имени» как на рисунке. Обратите внимание на то, что в поле «Диапазон:» мы используем функцию =СМЕЩ, а в одном из ее параметров используем функцию =СЧЕТ. Пример: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)
  3. Создание имени.

  4. Переместите курсор в ячейку D2 и введите функцию =СУММ с именем «доход» в ее параметрах.

Пример.

Теперь постепенно заполняя ячейки в столбце B, мы можем проследить, как изменяется охват ячеек именем «доход».



Функция СМЕЩ в Excel

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

Функция =СМЕЩ определяет наш диапазон в зависимости от количества заполненных ячеек в столбце B. 5 параметров функции =СМЕЩ(начальная ячейка; смещение размера диапазона по строкам; смещение по столбцам; размер диапазона в высоту; размер диапазона в ширину):

СМЕЩ.

  1. «Начальная ячейка» – указывает верхнюю левую ячейку, от которой будет динамически расширяться диапазон как вниз, так и вправо (при необходимости).
  2. «Смещение по строкам» – параметр определяет, на какое количество нужно смещать диапазон по вертикали от начальной ячейки (первого параметра). Значения могут быть нулевыми и отрицательными.
  3. «Смещение по столбцам» – параметр определяет, на какое количество нужно смещать по горизонтали от начальной ячейки. Значения могут быть даже нулевыми и отрицательными.
  4. «Размер диапазона в высоту» – количество ячеек, на которое нужно увеличить диапазон в высоту. По сути, название говорит само за себя.
  5. «Размер диапазона в ширину» – количество ячеек, на которое нужно увеличить в ширину от начальной ячейки.

Последние 2 параметра функции являются необязательными. Если их не заполнять, то диапазон будет состоять из 1-ой ячейки. Например: =СМЕЩ(A1;0;0) – это просто ячейка A1, а параметр =СМЕЩ(A1;2;0) ссылается на A3.

Теперь разберем функцию: =СЧЕТ, которую мы указывали в 4-ом параметре функции: =СМЕЩ.

Что определяет функция СЧЕТ

СЧЕТ.

Функция =СЧЕТ($B:$B) автоматически считает количество заполненных ячеек в столбце B.

Таким образом, мы с помощью функции =СЧЕТ() и =СМЕЩ() автоматизируем процесс формирования диапазона для имени «доход», что делает его динамическим. Теперь еще раз посмотрим на нашу формулу, которой мы присвоили имя «доход»: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)

Читать данную формулу следует так: первый параметры указывает на то, что наш автоматически изменяемый диапазон начинается в ячейке B2. Следующие два параметра имеют значения 0;0 – это значит, что динамический диапазон не смещается относительно начальной ячейки B2. А увеличивается только его размер по вертикали, о чем свидетельствует 4-тый параметр. В нем находится функция СЧЕТ и она возвращает число равно количеству заполненных ячеек в столбце B. Соответственно количество ячеек по вертикали в диапазоне будет равно числу, которое нам даст функция СЧЕТ. А за ширину диапазона у нас отвечает последний 5-тый параметр, где находиться число 1.

Благодаря функции СЧЕТ мы рационально загружаем в память только заполненные ячейки из столбца B, а не весь столбец целиком. Данный факт исключает возможные ошибки связанные с памятью при работе с данным документом.

Динамические диаграммы в Excel

У нас есть динамическое имя, теперь создадим динамическую диаграмму для данного типа отчета:

  1. Выделите диапазон B2:B6 и выберите инструмент: «Вставка»-«Диаграммы»-«Гистограмма»-«Гистограмма с группировкой».
  2. Щелкните левой кнопкой мышки по любому столбцу гистограммы и в строке формул отобразится функция диаграммы: =РЯД().
  3. РЯД.

  4. В строке формул измените параметры функции: =РЯД(Лист1!$B$1;;Лист1!$B$2:$B$7;1) на =РЯД(Лист1!$B$1;;Лист1!доход;1).
  5. В отчет добавьте новую запись в ячейки A8 — «июль», B8 — «77000» соответственно. И убедитесь, что на диаграмме автоматически добавился новый столбец.

Динамическая диаграмма.

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

Динамический диапазон с автоподстройкой размеров

Есть ли у вас таблицы с данными в Excel, размеры которых могут изменяться, т.е. количество строк (столбцов) может увеличиваться или уменьшаться в процессе работы? Если размеры таблицы «плавают», то придется постоянно мониторить этот момент и подправлять:

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

Все это в сумме не даст вам скучать ;)

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

Способ 1. Умная таблица

Выделите ваш диапазон ячеек и выберите на вкладке Главная – Форматировать как Таблицу (Home – Format as Table):

dynamic_range1.png

Если вам не нужен полосатый дизайн, который добавляется к таблице побочным эффектом, то его можно отключить на появившейся вкладке Конструктор (Design). Каждая созданная таким образом таблица получает имя, которое можно заменить на более удобное там же на вкладке Конструктор (Design) в поле Имя таблицы (Table Name).

dynamic_range3.png

Теперь можно использовать динамические ссылки на нашу «умную таблицу»:

  • Таблица1 – ссылка на всю таблицу кроме строки заголовка (A2:D5)
  • Таблица1[#Все] – ссылка на всю таблицу целиком (A1:D5)
  • Таблица1[Питер] – ссылка на диапазон-столбец без первой ячейки-заголовка (C2:C5)
  • Таблица1[#Заголовки] – ссылка на «шапку» с названиями столбцов (A1:D1)

Такие ссылки замечательно работают в формулах, например:

=СУММ(Таблица1[Москва]) – вычисление суммы по столбцу «Москва»

или

=ВПР(F5;Таблица1;3;0) – поиск в таблице месяца из ячейки F5 и выдача питерской суммы по нему (что такое ВПР?)

Такие ссылки можно успешно использовать при создании сводных таблиц, выбрав на вкладке Вставка – Сводная таблица (Insert – Pivot Table) и введя имя умной таблицы в качестве источника данных:

dynamic_range4.png

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

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

dynamic_range5.png

Т.е. ссылка на умную таблицу в виде текстовой строки (в кавычках!) превращается в полноценную ссылку, а уж ее выпадающий список нормально воспринимает.

Способ 2. Динамический именованный диапазон

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

dynamic_range6.png

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

Нам потребуются две встроенных функции Excel, имеющиеся в любой версии – ПОИКСПОЗ (MATCH) для определения последней ячейки диапазона и ИНДЕКС (INDEX) для создания динамической ссылки.

Ищем последнюю ячейку с помощью ПОИСКПОЗ

ПОИСКПОЗ(искомое_значение;диапазон;тип_сопоставления) – функция, которая ищет заданное значение в диапазоне (строке или столбце) и выдает порядковый номер ячейки, где оно было найдено. Например, формула ПОИСКПОЗ(“март”;A1:A5;0) выдаст в качестве результата число 4, т.к. слово «март» расположено в четвертой по счету ячейке в столбце A1:A5. Последний аргумент функции Тип_сопоставления = 0 означает, что мы ведем поиск точного соответствия. Если этот аргумент не указать, то функция переключится в режим поиска ближайшего наименьшего значения – это как раз и можно успешно использовать для нахождения последней занятой ячейки в нашем массиве.

Суть трюка проста. ПОИСКПОЗ перебирает в поиске ячейки в диапазоне сверху-вниз и, по идее, должна остановиться, когда найдет ближайшее наименьшее значение к заданному. Если указать в качестве искомого значение заведомо больше, чем любое имеющееся в таблице, то ПОИСКПОЗ дойдет до самого конца таблицы, ничего не найдет и выдаст порядковый номер последней заполненной ячейки. А нам это и нужно!

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

dynamic_range7.png

Для гарантии можно использовать число 9E+307 (9 умножить на 10 в 307 степени, т.е. 9 с 307 нулями) – максимальное число, с которым в принципе может работать Excel.

Если же в нашем столбце текстовые значения, то в качестве эквивалента максимально большого числа можно вставить конструкцию ПОВТОР(“я”;255) – текстовую строку, состоящую из 255 букв «я» — последней буквы алфавита. Поскольку при поиске Excel, фактически, сравнивает коды символов, то любой текст в нашей таблице будет технически «меньше» такой длинной «яяяяя….я» строки:

dynamic_range8.png

Формируем ссылку с помощью ИНДЕКС

Теперь, когда мы знаем позицию последнего непустого элемента в таблице, осталось сформировать ссылку на весь наш диапазон. Для этого используем функцию:

ИНДЕКС(диапазон; номер_строки; номер_столбца)

Она выдает содержимое ячейки из диапазона по номеру строки и столбца, т.е. например функция =ИНДЕКС(A1:D5;3;4) по нашей таблице с городами и месяцами из предыдущего способа выдаст 1240 – содержимое из 3-й строки и 4-го столбца, т.е. ячейки D3. Если столбец всего один, то его номер можно не указывать, т.е. формула ИНДЕКС(A2:A6;3) выдаст «Самару» на последнем скриншоте.

Причем есть один не совсем очевидный нюанс: если ИНДЕКС не просто введена в ячейку после знака =, как обычно, а используется как финальная часть ссылки на диапазон после двоеточия, то выдает она уже не содержимое ячейки, а ее адрес! Таким образом формула вида $A$2:ИНДЕКС($A$2:$A$100;3) даст на выходе уже ссылку на диапазон A2:A4.

И вот тут в дело вступает функция ПОИСКПОЗ, которую мы вставляем внутрь ИНДЕКС, чтобы динамически определить конец списка:

=$A$2:ИНДЕКС($A$2:$A$100; ПОИСКПОЗ(ПОВТОР(«я»;255);A2:A100))

Создаем именованный диапазон

Осталось упаковать все это в единое целое. Откройте вкладку Формулы (Formulas) и нажмите кнопку Диспетчер Имен (Name Manager). В открывшемся окне нажмите кнопку Создать (New), введите имя нашего диапазона и формулу в поле Диапазон (Reference):

Динамический именованный диапазон

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

Ссылки по теме

  • Использование функции ВПР (VLOOKUP) для связывания таблиц и подстановки значений
  • Как создать автоматически наполняющийся выпадающий список
  • Как создать сводную таблицу для анализа большого массива данных


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


Динамический диапазон —

это

Именованный диапазон

с изменяющимися границами. Границы диапазона изменяются в зависимости от количества значений в определенном диапазоне.

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

Выпадающий (раскрывающийся) список

,

Вложенный связанный список

и

Связанный список

.

Задача

Имеется таблица продаж по месяцам некоторых товаров (см.

Файл примера

):

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

Выпадающего списка

.

Для решения задачи нам потребуется сформировать два

динамических диапазона

: один для

Выпадающего списка

, содержащего месяцы; другой для диапазона суммирования.

Для формирования динамических диапазонов будем использовать функцию

СМЕЩ()

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

Создадим

динамический диапазон

для

Выпадающего списка

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

Выпадающий список

не должен содержать пустые строки.

Динамический диапазон

как раз и служит для решения такой задачи.

Для создания динамического диапазона:

  • на вкладке

    Формулы

    в группе

    Определенные имена

    выберите команду

    Присвоить имя

    ;
  • в поле

    Имя

    введите:

    Месяц

    ;
  • в поле

    Область

    выберите лист

    Книга

    ;
  • в поле

    Диапазон

    введите формулу

    =СМЕЩ(лист1!$B$5;;;1;СЧЁТЗ(лист1!$B$5:$I$5))
  • нажмите ОК.

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

B5

. Если не заданы аргументы функции

СМЕЩ()

смещ_по_строкам,

смещ_по_столбцам

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

высота

и

ширина

. В нашем случае значение высоты =1, а значение ширины диапазона равно результату вычисления формулы

СЧЁТЗ(лист1!$B$5:$I$5)

, т.е. 4 (в строке 5 присутствуют 4 месяца с

января

по

апрель

). Итак, адрес нижней правой ячейки нашего

динамического диапазона

определен – это

E

5

.

При заполнении таблицы данными о продажах за

май

,

июнь

и т.д., формула

СЧЁТЗ(лист1!$B$5:$I$5)

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

Выпадающий список

.

ВНИМАНИЕ! При использовании функции

СЧЕТЗ()

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

Теперь создадим еще один

динамический диапазон

для суммирования продаж.

Для создания

динамического диапазона

:

  • на вкладке

    Формулы

    в группе

    Определенные имена

    выберите команду

    Присвоить имя

    ;
  • в поле

    Имя

    введите:

    Продажи_за_месяц

    ;
  • в поле

    Диапазон

    введите формулу =

    СМЕЩ(лист1!$A$6;;ПОИСКПОЗ(лист1!$C$1;лист1!$B$5:$I$5;0);12)
  • нажмите ОК.

Теперь подробнее.

Функция

ПОИСКПОЗ()

ищет в строке 5 (перечень месяцев) выбранный пользователем месяц (ячейка

С1

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

А6

), высота диапазона не меняется и всегда равна 12 (при желании ее также можно сделать также динамической – зависящей от количества товаров в диапазоне).

И наконец, записав в ячейке

С2

формулу =

СУММ(Продажи_за_месяц)

получим сумму продаж в выбранном месяце.

Например, в мае.

Или, например, в апреле.


Примечание:

Вместо формулы с функцией

СМЕЩ()

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

ИНДЕКС()

: =

$B$5:ИНДЕКС(B5:I5;СЧЁТЗ($B$5:$I$5))

Формула подсчитывает количество элементов в строке 5 (функция

СЧЁТЗ()

) и определяет ссылку на последний элемент в строке (функция

ИНДЕКС()

), тем самым возвращает ссылку на диапазон

B5:E5

.

Визуальное отображение динамического диапазона

Выделить текущий

динамический диапазон

можно с помощью

Условного форматирования

. В

файле примера

для ячеек диапазона

B6:I14

применено правило

Условного форматирования

с формулой: =

СТОЛБЕЦ(B6)=СТОЛБЕЦ(Продажи_за_месяц)

Условное форматирование

автоматически выделяет серым цветом продажи

текущего месяца

, выбранного с помощью

Выпадающего списка

.

Применение динамического диапазона

Примеры использования

динамического диапазона

, например, можно посмотреть в статьях

Динамические диаграммы. Часть5: график с Прокруткой и Масштабированием

и

Динамические диаграммы. Часть4: Выборка данных из определенного диапазона

.

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

Содержание

  1. Автоматически изменяемые диапазоны ячеек в Excel
  2. Как сделать автоматическое изменение диапазона в Excel
  3. Функция СМЕЩ в Excel
  4. Функция СЧЕТ в Excel
  5. Динамические диаграммы в Excel
  6. Именованные диапазоны и их использование

Автоматически изменяемые диапазоны ячеек в Excel

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

Как сделать автоматическое изменение диапазона в Excel

Предположим, вы – инвестор, которому надо вложить средства в какой-то объект. В результате мы хотим получить информацию о том, сколько можно суммарно заработать за все время, пока деньги будут работать на этот проект. Тем не менее, чтобы получить эту информацию, нам надо регулярно следить за тем, сколько суммарно прибыли нам приносит этот объект. Сделайте такой же отчет, который есть на этом скриншоте.

Как в Excel задать диапазон значений

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

  1. Если таким способом решить задачу, нельзя будет задействовать ячейки, входящие в столбец B, под другие цели.
  2. Такая таблица будет потреблять очень много оперативной памяти, из-за чего использование документа станет невозможным на слабых компьютерах.

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

  1. Перейти на вкладку «Формулы», которая находится в главном меню. Там будет раздел «Определенные имена», где есть кнопка «Присвоить имя», по которой и надо нам нажать.
  2. Далее появится диалоговое окно, в котором нужно заполнить поля таким образом, как изображено на скриншоте. Важно отметить, что нам надо применять функцию =СМЕЩ совместно с функцией СЧЕТ, чтобы создать автоматически обновляемый диапазон. Как в Excel задать диапазон значений
  3. После этого нам надо использовать функцию СУММ, в качестве аргумента которой используем наш динамически изменяемый диапазон. Как в Excel задать диапазон значений

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

Функция СМЕЩ в Excel

Давайте рассмотрим функции, которые были нами записаны в поле «диапазон» ранее. С помощью функции СМЕЩ мы можем определять величину диапазона, учитывая то, сколько ячеек в колонке B заполнено. Аргументы функции следующие:

  1. Начальная ячейка. С помощью этого аргумента пользователь может показать, какая ячейка диапазона будет считаться верхней левой. От нее будет происходить отчет вниз и вправо.
  2. Смещение диапазона по строкам. С помощью этого диапазона мы задаем количество ячеек, на которое должно происходить смещение от верхней левой ячейки диапазона. Можно использовать не только положительные значения, а нулевые и минусовые. В таком случае смещения может не происходить вообще или же оно будет осуществляться в обратном направлении.
  3. Смещение диапазона по колонкам. Этот параметр аналогичен предыдущему, только позволяет задать степень смещения диапазона по горизонтали. Здесь также можно использовать как нулевые, так и отрицательные значения.
  4. Величина диапазона в высоту. Фактически название этого аргумента дает нам четко понять, что оно означает. Это то количество ячеек, на которое должно происходить увеличение диапазона.
  5. Величина диапазона в ширину. Аргумент аналогичный предыдущему, только уже касается колонок.

Как в Excel задать диапазон значений

Указывать последние два аргумента не нужно, если в этом нет необходимости. В этом случае величина диапазона будет составлять всего одну ячейку. Например, если указать формулу =СМЕЩ(A1;0;0), эта формула будет ссылаться на ту же ячейку, которая в первом аргументе. Если же смещение по вертикали поставить 2 единицы, то в этом случае ячейка будет ссылаться на ячейку A3. Теперь давайте детально распишем, что означает функция СЧЕТ.

Функция СЧЕТ в Excel

Как в Excel задать диапазон значений

С помощью функции СЧЕТ мы определяем, сколько ячеек в колонке B у нас по итогу заполнено. То есть, мы определяем с помощью двух функций то, сколько ячеек в диапазоне заполнено, и исходя из полученных сведений определяет величину диапазона. Следовательно, итоговая формула получится следующей: =СМЕЩ(Лист1!$B$2;0;0;СЧЁТ(Лист1!$B:$B);1)

Давайте разберем, как правильно понимать принцип работы этой формулы. Первый аргумент показывает на то, где начинается наш динамический диапазон. В нашем случае это ячейка B2. Дальнейшие параметры у нас имеют нулевые координаты. Это говорит о том, что смещения относительно верхней левой ячейки нам не нужно. Все, что мы заполняем – это размер диапазона по вертикали, в качестве которого мы использовали функцию СЧЕТ, которая определяет количество ячеек, в которых есть какие-то данные. Четвертый параметр, который мы заполнили – это единица. Таким образом мы показывает то, что общая ширина диапазона должна составлять одну колонку.

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

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

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

Динамические диаграммы в Excel

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

  1. Выделяем наш диапазон, после чего вставляем диаграмму типа «Гистограмма с группировкой». Найти этот пункт можно в разделе «Вставка» в разделе «Диаграммы–Гистограмма».
  2. Делаем левый клик мышью по случайной колонке гистограммы, после чего в строке функций будет показана функция =РЯД(). На скриншоте вы можете посмотреть на детальную формулу. Как в Excel задать диапазон значений
  3. После этого в формулу нужно внести некоторые изменения. Необходимо заменить диапазон после «Лист1!» на название диапазона. В результате получится следующая функция: =РЯД(Лист1!$B$1;;Лист1!доход;1)
  4. Теперь осталось в отчет добавить новую запись, чтобы проверить, обновляется ли диаграмма автоматически, или нет.

Полюбуемся теперь на нашу диаграмму.

Как в Excel задать диапазон значений

Давайте подведем итоги, как мы действовали. Мы на предыдущем этапе создали динамический диапазон, размер которого зависит от того, сколько элементов в него входит. Для этого мы использовали комбинацию функций СЧЕТ и СМЕЩ. Мы этот диапазон сделали именным, и потом ссылку на это имя использовали в качестве диапазона нашей гистограммы. Какой конкретно диапазон выбирать в качестве источника данных на первом этапе, не столь важно. Главное – заменить его на имя диапазона потом. Так можно существенно сэкономить оперативную память.

Именованные диапазоны и их использование

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

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

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

  1. Максимальная длина составляет 255 знаков. Этого вполне хватит для того, чтобы присвоить такое имя, которое душе угодно.
  2. Имя не должно содержать пробелы. Следовательно, если в его состав входит несколько слов, то возможно их разделение с помощью символа подчеркивания.

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

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

Кроме этого, возможно создание именованного диапазона с помощью вкладки «Формулы», воспользовавшись инструментом «Задать имя». После того, как мы выберем его, появится окно, где надо выбрать имя для нашего диапазона, а также указать область, на которую он будет распространяться, вручную. Также можно задать где будет действовать этот диапазон: в рамках одного листа или на всей книге.

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

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

Еще один способ создания именованного диапазона – получать его из таблицы. Для этого существует специальный инструмент, который называется «Создать из выделенного». Как мы понимаем, чтобы его использовать, необходимо сначала выделить тот диапазон, который мы будем редактировать, после чего задать место, в котором у нас располагаются заголовки. В результате, основываясь на этих данных Excel автоматически обработает все данные, и заголовки будут автоматически присвоены.

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

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

Оцените качество статьи. Нам важно ваше мнение:

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

Одна из неприятностей, связанных с поддержкой списков — необходимость править диапазон в Формулы > Диспетчер имён после каждого добавления/удаления строк данных в исходном диапазоне. Чтобы избежать подобной ситуации, можно создать динамический диапазон, применив формулы вместо жёстко заданных координат. Чаще всего используется функция СМЕЩ, как показано ниже. Запрос «Excel динамический диапазон» в любом поисковике вернёт сотни ссылок, большинство из которых будут вариантами формулы:

=СМЕЩ(Лист!$A$1, 0, 0, СЧЁТЗ ($A:$A), 1)

СМЕЩ возвращает диапазон, модифицированный относительно базового – пункт Ссылка. Смещпострокам и Смещпостолбцам смещают начало диапазона на соответствующее число строк и столбцов. Высота и Ширина задают количество строк и столбцов в диапазоне.

Ссылка: обычно указывается верхняя левая ячейка именованного диапазона.

Смещпострокам: обычно 0, т.к. стартовую позицию мы уже определили.

Смещпостолбцам: так же обычно 0, по той же самой причине.

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

Ширина: количество столбцов в нашем диапазоне (минимум 1).

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

Типичная формула динамического диапазона, которую можно найти на просторах интернета, использует СЧЁТ (для числовых данных) или СЧЁТЗ (для текста). Обе эти функции подсчитывают количество непустых ячеек. Если мы подсчитаем количество непустых ячеек в одном столбце и введём это число в параметр Высота, то мы получим диапазон от начальной ячейки до последней ячейки с записью. Но это в теории.

В действительности, если вы внимательно читали, мы получим диапазон высотой в то количество строк, которое мы получили от СЧЁТЗ. Если в диапазоне присутствуют пустые ячейки, то выходной диапазон окажется короче, чем необходимо, и последние ячейки потеряются. Помните об этой тонкости.

Наиболее часто динамический диапазон используется в следующих случаях:

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

Если у нас есть таблица, в которой меняется количество строк, и есть формулы, использующие ссылку на эту таблицу, то применение динамического диапазона вполне логичный шаг. Допустим у нас есть «база данных», в которую мы заносим каждое обращение клиента, и мы хотим подсчитать количество обращений определённого клиента. Тогда можно сделать нечто такое:

Like this post? Please share to your friends:
  • Автоматическое изменение даты в ячейке excel
  • Автоматическое изменение даты в word
  • Автоматическое заполнение бланков excel по списку
  • Автоматическое изменение данных в excel
  • Автоматическое заполнение бланка excel