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

Содержание

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

Microsoft Excel

трюки • приёмы • решения

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

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

Например, на рис. 35.1 показан ряд последовательных чисел в столбце А. Ячейка А1 содержит значение 1, а ячейка А2 содержит формулу, которая была скопирована вниз по столбцу: =А1+1

Рис. 35.1. Excel предлагает простой способ сгенерировать ряд значений

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

  1. Введите 1 в ячейку А1.
  2. Введите 2 в ячейку А2.
  3. Выберите А1:А2.
  4. Переместите указатель мыши в правый нижний угол ячейки А2 (так называемый маркер заполнения ячейки) и, когда указатель мыши превратится в черный знак «плюс», перетащите его вниз по столбцу, чтобы заполнить ячейки.

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

Данные, введенные в шагах 1 и 2, обеспечивают Excel необходимой информацией для определения типа серии, которую надо использовать. Если бы вы ввели 3 в ячейку А2, то серия бы состояла из нечетных чисел: 1,3, 5, 7 и т. д.

Вот еще один трюк автозаполнения: если данные, с которых вы начинаете, являются беспорядочными, Excel завершает автозаполнение, выполняя линейную регрессию и заполняя диапазон спрогнозированными значениями. На рис. 35.2 приведен лист с ежемесячными значениями продаж за январь-июль. При использовании автозаполнения после выбора С2:С8 Excel продлевает наиболее вероятную линейную тенденцию продаж и заполняет недостающие значения. На рис. 35.3 показаны спрогнозированные значения, а также график.

Рис. 35.2. Значения продаж за январь-июль, которые будут использованы для автозаполнения дальнейших цифр

Рис. 35.3. Цифры продаж последних пяти месяцев после использования автозаполнения для прогнозирования

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

Таблица 35.1. Типы данных с возможностью автозаполнения

Первое значение Автоматически сгенерированные значения
Воскресенье Понедельник, вторник, среда и т. д.
Квартал-1 Квартал-2, Квартал-3, Квартал-4, Квартал-1 и т. д.
Янв Фев, Map, Апр и т. д.
Январь Февраль, Март, Апрель и т. д.
Месяц 1 Месяц 2, Месяц 3, Месяц 4 и т. д.

Вы также можете создавать собственные списки элементов для автоматического заполнения. Для этого откройте диалоговое окно Параметры Excel и перейдите в раздел Дополнительно. Затем прокрутите окно вниз и нажмите кнопку Изменить списки для отображения диалогового окна Списки. Введите ваши элементы в поле Элементы списка (каждый на новой строке). Затем нажмите кнопку Добавить, чтобы создать список. На рис. 35.4 показан пользовательский список названий регионов, которые используют римские цифры.

Рис. 35.4. Эти имена регионов работают с функцией автоматического заполнения Excel

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

Рис. 35.5. Контекстное меню для автозаполнения

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

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

Есть ли у вас таблицы с данными в 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) для связывания таблиц и подстановки значений
  • Как создать автоматически наполняющийся выпадающий список
  • Как создать сводную таблицу для анализа большого массива данных

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

Например, на рис. 35.1 показан ряд последовательных чисел в столбце А. Ячейка А1 содержит значение 1, а ячейка А2 содержит формулу, которая была скопирована вниз по столбцу: =А1+1

Рис. 35.1. Excel предлагает простой способ сгенерировать ряд значений

Рис. 35.1. Excel предлагает простой способ сгенерировать ряд значений

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

  1. Введите 1 в ячейку А1.
  2. Введите 2 в ячейку А2.
  3. Выберите А1:А2.
  4. Переместите указатель мыши в правый нижний угол ячейки А2 (так называемый маркер заполнения ячейки) и, когда указатель мыши превратится в черный знак «плюс», перетащите его вниз по столбцу, чтобы заполнить ячейки.

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

Данные, введенные в шагах 1 и 2, обеспечивают Excel необходимой информацией для определения типа серии, которую надо использовать. Если бы вы ввели 3 в ячейку А2, то серия бы состояла из нечетных чисел: 1,3, 5, 7 и т. д.

Вот еще один трюк автозаполнения: если данные, с которых вы начинаете, являются беспорядочными, Excel завершает автозаполнение, выполняя линейную регрессию и заполняя диапазон спрогнозированными значениями. На рис. 35.2 приведен лист с ежемесячными значениями продаж за январь-июль. При использовании автозаполнения после выбора С2:С8 Excel продлевает наиболее вероятную линейную тенденцию продаж и заполняет недостающие значения. На рис. 35.3 показаны спрогнозированные значения, а также график.

Рис. 35.2. Значения продаж за январь-июль, которые будут использованы для автозаполнения дальнейших цифр

Рис. 35.2. Значения продаж за январь-июль, которые будут использованы для автозаполнения дальнейших цифр

Рис. 35.3. Цифры продаж последних пяти месяцев после использования автозаполнения для прогнозирования

Рис. 35.3. Цифры продаж последних пяти месяцев после использования автозаполнения для прогнозирования

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

Таблица 35.1. Типы данных с возможностью автозаполнения

Первое значение Автоматически сгенерированные значения
Воскресенье Понедельник, вторник, среда и т. д.
Квартал-1 Квартал-2, Квартал-3, Квартал-4, Квартал-1 и т. д.
Янв Фев, Map, Апр и т. д.
Январь Февраль, Март, Апрель и т. д.
Месяц 1 Месяц 2, Месяц 3, Месяц 4 и т. д.

Вы также можете создавать собственные списки элементов для автоматического заполнения. Для этого откройте диалоговое окно Параметры Excel и перейдите в раздел Дополнительно. Затем прокрутите окно вниз и нажмите кнопку Изменить списки для отображения диалогового окна Списки. Введите ваши элементы в поле Элементы списка (каждый на новой строке). Затем нажмите кнопку Добавить, чтобы создать список. На рис. 35.4 показан пользовательский список названий регионов, которые используют римские цифры.

Рис. 35.4. Эти имена регионов работают с функцией автоматического заполнения Excel

Рис. 35.4. Эти имена регионов работают с функцией автоматического заполнения Excel

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

Рис. 35.5. Контекстное меню для автозаполнения

Рис. 35.5. Контекстное меню для автозаполнения

Начнем с самого простого: дайте ячейке имя. Для этого просто выделите ее (1) и в поле имени (2) вместо адреса ячейки введите любое легко запоминающееся имя.

Именная ячейка C7

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

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

Использование имени ячейки

Ячейки, строки, столбцы

Начнем с выделения ячеек, строк и столбцов.

  1. Чтобы выбрать ячейку C3, нажмите на поле на пересечении столбца C и строки 3.

  2. Чтобы выбрать столбец C, щелкните по заголовку столбца C.

  3. Чтобы выбрать строку 3, щелкните по заголовку строки 3.

Примеры диапазона

Диапазон — это набор из двух или более ячеек.

  1. Чтобы выделить диапазон B2:C4, щелкните в правом нижнем углу ячейки B2 и перетащите указатель мыши в ячейку C4.

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

Заполнение диапазона

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

  1. В ячейку B2 введите значение 2.

  2. Выделите ячейку B2, зажмите ее правый нижний угол и перетащите вниз к ячейке B8.

    Результат:

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

  3. Введите значение 2 в ячейку B2 и значение 4 в ячейку B3.

  4. Выделите ячейки B2 и B3, зажмите правый нижний угол этого диапазона и перетащите его вниз.

    Excel автоматически заполнит диапазон на основе формулы из первых двух значений. Довольно круто, правда? Вот еще один пример:

  5. Введите дату 13/6/2013 в ячейку B2 и дату 16/6/2013 в ячейку B3 (на рисунке показан американский эквивалент этих дат).

  6. Выделите ячейки B2 и B3, зажмите правый нижний угол этого диапазона и перетащите его вниз.

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

Диапазон ячеек можно назвать аналогичным образом, т.е. выделить диапазон (1) и ввести его имя в поле имени (2):

Создание именованного диапазона

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

Использование именованного диапазона в формуле

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

Создание именованного диапазона с помощью панели инструментов

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

Создание имени с помощью диалогового окна

Для работы с существующими диапазонами на вкладке Формулы есть Менеджер имен.

Именной менеджер

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

Управление именованными диапазонами

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

Задача

У вас есть таблица продаж некоторых товаров по месяцам (см. файл-образец ):

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

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

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

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

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

  • на вкладке Формулы в группе Определенные имена выберите Присвоить имя ;
  • В поле Имя введите: Месяц ;
  • В поле Область выберите Книжный лист ;
  • В поле Range введите формулу =MEMBERSHIP(sheet1!$B$5;;;1;ACCOUNT(sheet1!$B$5:$I$5)).
  • Нажмите OK.

Теперь подробнее. Любой диапазон в EXCEL определяется координатами верхней левой и нижней правой ячеек диапазона. Начальной ячейкой, от которой рассчитывается положение нашего динамического диапазона, является ячейка B5 . Если аргументы offset_by_rows, offset_by_columns не заданы (как в нашем случае), то эта ячейка является верхней левой ячейкой диапазона. Правая нижняя ячейка диапазона задается аргументами height и width . В нашем случае значение высоты =1, а значение ширины диапазона равно результату расчета формулы SCHOTZ(sheet1!$B$5:$I$5), который равен 4 (строка 5 содержит 4 месяца с января по апрель). Итак, адрес правой нижней ячейки нашего динамического диапазона определен — это E 5 .

Когда вы заполните таблицу данными о продажах за май, июнь и так далее, формула READ(sheet1!$B$5:$I$5) вернет количество заполненных ячеек (количество названий месяцев) и таким образом определит новую ширину динамического диапазона, который в свою очередь создаст выпадающий список.

ПРИМЕЧАНИЕ: При использовании функции SCRETZ() убедитесь, что нет пустых ячеек! Т.е. вы должны заполнить список месяцами без пробелов.

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

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

  • На вкладке Формулы в группе Определенные имена выберите Присвоить имя ;
  • В поле Имя введите: Продажи_в_месяц;
  • В поле Диапазон введите формулу = AMOUNT(worksheet1!$A$6;;SCHEDULE(worksheet1!$C$1;worksheet1!$B$5:$I$5;0);12).
  • нажмите OK.

Функция ПОИСКПОЗ() ищет в строке 5 (список месяцев) месяц, выбранный пользователем (ячейка C1 с выпадающим списком), и возвращает соответствующий номер элемента из диапазона поиска (названия месяцев должны быть уникальными, т.е. этот пример не подходит для нескольких лет). Левый верхний угол нашего динамического диапазона (начиная с ячейки A6) перемещается на это количество столбцов, высота диапазона остается фиксированной — 12 (при желании вы можете сделать ее динамической, в зависимости от количества товаров в диапазоне).

И, наконец, если вы введете формулу = SUMM(Sales_over_month) в ячейку C2, вы получите сумму продаж в выбранном месяце.

Например, в мае месяце.

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

Примечание: Вместо формулы SMUM() можно использовать формулу INDEX() : = $B$5:INDEX(B5:I5;AMOUNT($B$5:$I$5)) для расчета количества завершенных месяцев.

Формула подсчитывает количество элементов в строке 5 (SCRUTZ() ) и определяет ссылку на последний элемент в строке (INDEX() ), таким образом возвращая ссылку на диапазон B5:E5 .

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

Текущий динамический диапазон можно выделить с помощью условного форматирования . В файле примера правило условного форматирования применяется к ячейкам диапазона B6:I14 с помощью формулы: = столбец(B6)= столбец(Продажи_в_месяц)

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

Пример 2. Определите количество столбцов в таблице и введите это значение в ячейку A16.

Таблица:

Мы используем формулу OVERALL, выбирая в качестве параметра поочередно каждый столбец ячейки. Нажмите и удерживайте клавишу Ctrl перед выбором следующего столбца. Если вы добавите «)» и нажмите Enter, появится диалоговое окно, указывающее на то, что вы ввели слишком много аргументов. Добавьте дополнительные открывающие и закрывающие скобки.

Результат расчета:

Определение принадлежности ячейки к диапазону таблицы

Пример 3 Определяет, принадлежит ли данная ячейка заданному диапазону ячеек.

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

    1. Введите часть формулы «=WORLD(()» в любую ячейку и выделите любой диапазон ячеек для заполнения аргументов:

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

    1. Закройте обе скобки и нажмите Enter. Результат будет следующим:

    1. Если вы выберете ячейку из диапазона, отличного от указанного, вы получите ошибку #empty!

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

Если вы выделите более одной ячейки в диапазоне, функция VARIABLE вернет количество выделенных ячеек:

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

Перемещение и копирование ячеек и их содержимого

См. также = IF(ANSWER(A2);A2;B2) вы копируете макрос «Фильтр» соответствующим образом…. Это будет работать только в таблице: Я думаю, что это возможно, если колонна. Т.е. получается, что ВСЕ», затем выполните и нажмите кнопку Вставить более сложную процедуру, щелкните значок Вставить на следующих действиях.Вставить, вы можете выбрать для временного отображения данных, выбранный раздел наПримечание: вставить как выходные значения таблицы с необходимостью?

The_Prist скопируйте выделенный диапазон, который вы выбрали для вышеуказанных действийCtrl+Paste. Чтобы переместить ячейки, щелкните мышью. Вставьте варианты, которые не требуют другого рабочего листа или Попробуйте как можно чаще

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

Nikolay28

Дата: Четверг, 22.01.2015, 14:23 |
Сообщение № 1

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

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

Сообщений: 11


Репутация:

0

±

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


Excel 2007

Добрый день.

Подскажите, пожалуйста, код чтобы выделялся диапазон с текущей ячейки до последней заполненной в колонках и столбцах.

И если можно тут же еще вопрос, как этот макрос добавить в контекстное меню потом?

Спасибо.

 

Ответить

DJ_Marker_MC

Дата: Четверг, 22.01.2015, 14:26 |
Сообщение № 2

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

Ранг: Ветеран

Сообщений: 991


Репутация:

213

±

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


Excel 2019

Добрый день.
[vba]

Код

ActiveSheet.UsedRange.Select

[/vba]

 

Ответить

Pelena

Дата: Четверг, 22.01.2015, 14:29 |
Сообщение № 3

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

А горячие клавиши не подойдут? Ctrl+Shift+End


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Nikolay28

Дата: Четверг, 22.01.2015, 14:46 |
Сообщение № 4

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

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

Сообщений: 11


Репутация:

0

±

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


Excel 2007

нет, cntr+shift+end выбирают диапазон и пустых ячеек, но которые были редактированы.

 

Ответить

Nikolay28

Дата: Четверг, 22.01.2015, 14:48 |
Сообщение № 5

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

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

Сообщений: 11


Репутация:

0

±

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


Excel 2007

по поводу этого «ActiveSheet.UsedRange.Select»
Мне нужно выделять диапазон с выбранной мною ячейки, далее нажимать макрос, чтобы он уже от этой ячейки выбирал все, именно, заполненные ячейки. Вот как-то так!

 

Ответить

Rioran

Дата: Четверг, 22.01.2015, 14:49 |
Сообщение № 6

Группа: Авторы

Ранг: Ветеран

Сообщений: 903


Репутация:

290

±

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


Excel 2013

Nikolay28, здравствуйте!

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

[vba]

Код

Range(Selection, Cells(ActiveSheet.UsedRange.Rows.Count, ActiveSheet.UsedRange.Columns.Count)).Select

[/vba]
Этот механизм надёжен до тех пор, пока Вы ничего не пишете «для заметок» за пределами таблицы. Совсем идеальный вариант — первый цикл проходит по строке заголовков до первой пустой ячейки, второй цикл перебирает найденные столбцы и в каждом ищет последнюю заполненную ячейку с помощью прыжка. Каждые числа столбцов сравниваются и выбирается максимальное. Так точно можно быть застрахованным от строк с частично отсутствующими данными и от особенности UsedRange, который будет выделять даже те диапазоны, которые были очищены от значений «вручную».


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279

Сообщение отредактировал RioranЧетверг, 22.01.2015, 14:53

 

Ответить

Nikolay28

Дата: Четверг, 22.01.2015, 14:53 |
Сообщение № 7

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

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

Сообщений: 11


Репутация:

0

±

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


Excel 2007

Rioran, спасибо! То что надо!)

 

Ответить

Понравилась статья? Поделить с друзьями:
  • Диапазон для построения графика excel
  • Диапазон в ms excel это все ячейки одного столбца
  • Диапазон для выпадающего списка excel
  • Диапазон дат в одной ячейки excel
  • Диапазон дат в excel по условию