Читаем Магия таблиц. 100+ приемов ускорения работы в Excel (и немного в Google Таблицах) полностью

=ПОСЛЕД(1; ДЕНЬ(КОНМЕСЯЦА(СЕГОДНЯ();0));ДАТА(ГОД(СЕГОДНЯ());МЕСЯЦ(СЕГОДНЯ());1);1)

Новый тип ссылок # (ссылка на ячейку с формулой массива)

Файл с примером: Справочник магазинов — ссылка с решеткой.xlsx

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

Например, вам нужно сделать выпадающий список с уникальными значениями из таблицы — допустим, чтобы выбирать город из списка магазинов «ЛеМура» и формировать ссылку на отправку писем только в магазины этого города.

Мы можем получить список всех городов (без дубликатов) с помощью функции УНИК / UNIQUE. Но его размеры могут измениться в будущем. То есть сослаться на диапазон G2:G18 в проверке данных или формуле нельзя: в будущем какой-то город может исчезнуть из таблицы или появятся новые, и тогда функция будет возвращать результат, занимающий меньший или больший диапазон.

Для таких случаев и появился новый тип ссылок — с решеткой после адреса ячейки. Например, A2# означает «ссылка на все значения, которые будет возвращать формула массива, введенная в ячейке A2». А уж каким будет размер этого массива, мы заранее не знаем.

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

Теперь, когда в таблице будут удаляться или добавляться новые города, изменится результат, возвращаемый функцией УНИК в ячейке G2, а значит, и в выпадающем списке в ячейке с проверкой данных будет актуальный список.

Отправка писем по отфильтрованным адресам формулой

Давайте продолжим работать с предыдущим примером и задействуем еще одну из новых функций (ФИЛЬТР / FILTER), чтобы решить следующую задачу: формировать ссылку на отправку писем во все магазины выбранного в выпадающем списке города.

С помощью функции ФИЛЬТР мы можем получить список адресов выбранного в ячейке J2 города.

А дальше необходимо склеить это в одну текстовую строку, добавив между адресами запятые, чтобы потом использовать это в обработчике "mailto: ", формирующем ссылку на отправку писем. Склеить адреса, возвращаемые функцией ФИЛЬТР, можно с помощью функции ОБЪЕДИНИТЬ / TEXTJOIN. Ее первый аргумент — разделитель (в нашем случае запятая), второй — нужно ли пропускать пустые ячейки (в нашем случае пустых ячеек быть не должно, но можно все равно включить эту опцию — аргумент будет равен ИСТИНА / TRUE), третий — значения, которые нужно объединить (у нас это функция ФИЛЬТР, возвращающая список адресов):

=ОБЪЕДИНИТЬ(","; ИСТИНА; ФИЛЬТР(…))

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

Остается добавить обработчик "mailto: " к списку и превратить все в гиперссылку. Второй аргумент функции ГИПЕРССЫЛКА / HYPERLINK — как выглядит ссылка в ячейке:

=ГИПЕРССЫЛКА("mailto: " & ОБЪЕДИНИТЬ(","; ИСТИНА; ФИЛЬТР(…)); "Рассылка")

После перехода по ссылке, сформированной такой формулой, в вашем почтовом клиенте будет сформировано письмо с отобранными функцией ФИЛЬТР адресами в поле «Кому». Можно пойти дальше и добавить тему (?subject= после списка адресатов) и тело письма (&body=).

<p>Функция СМЕЩ / OFFSET</p>

Файл с примерами: СМЕЩ.xlsx

Функция СМЕЩ / OFFSET позволяет формировать ссылку на диапазон, описываемый не точным адресом (A1:B10, например), а параметрами — первой ячейкой диапазона, отступом от нее, высотой и шириной.

Вообще говоря, любой диапазон в Excel можно задать тремя параметрами: первой (левой верхней) ячейкой, высотой и шириной. Например, упомянутый A1:B10 — это диапазон с первой ячейкой A1, шириной в 2 столбца и высотой в 10 строк. Зачем еще и отступ в функции СМЕЩ? Чтобы была возможность менять не только ширину и высоту столбца, но и первую ячейку диапазона (и все это — не меняя саму формулу, а только параметры функции СМЕЩ).

Функция СМЕЩ / OFFSET не новая — она есть во всех версиях Excel и в Google Таблицах.

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

Аргументы функции СМЕЩ:

=СМЕЩ (ссылка; строка;столбец; высота;ширина)

Рассмотрим несколько примеров, как определенные параметры СМЕЩ соответствуют диапазону на листе:

=СМЕЩ(B1;0;0;9;1)

• Начало — в ячейке B1.

• Отступ от нее:

ноль по строкам;

ноль по столбцам.

• Высота — 9.

• Ширина — 1.

=СМЕЩ(A1;1;1;9;2)

• Начало — в ячейке A1.

• Отступ от нее:

вниз на 1 строку;

Перейти на страницу:

Все книги серии МИФ. Бизнес

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных