ТОП 15 формул в Excel
Excel, безусловно, одна из самых необходимых программ. Она сделала жизнь множества пользователей легче. Excel позволяет автоматизировать даже самые сложные вычисления, и в этом заключается основное преимущество этой программы.
Как правило, стандартный пользователь применяет лишь ограниченный набор функций, в то время как существует множество формул, позволяющих реализовывать те же задачи, но значительно быстрее.
Это может быть полезно, если постоянно приходится выполнять множество однотипных действий, требующих большого количества операций.
Стало интересно? Тогда добро пожаловать в обзор самых полезных 15 формул Excel.
Немного терминологии
Перед тем, как непосредственно начать обзор функций, нужно разобраться в том, что же это такое. Под этим понятием подразумевается заложенная разработчиками формула, по которой осуществляются вычисления и на выходе получается определенный результат.
Каждая функция имеет две основные части: имя и аргумент. Формула может состоять из одной функции или нескольких. Чтобы ее начать писать, нужно кликнуть дважды по требуемой ячейке и написать знак «равно».
Следующая составная часть функции – это имя. Собственно, им и является название формулы, которое поможет Excel понять, что хочет пользователь. Вслед за ним в скобках приводятся аргументы. Это параметры функции, учитываемые для выполнения определенных операций. Бывает несколько типов аргументов: числовые, текстовые, логические. Также вместо них нередко используются ссылки на ячейки или определенный диапазон. Каждый аргумент отделяется от другого с помощью точки с запятой.
Синтаксис – одно из главных понятий, характеризующих функцию. Под этим термином подразумевается шаблон для вставки определенных значений с целью обеспечить работоспособность функции.
А теперь давайте все это проверим на практике.
Формула 1: ВПР
Эта функция дает возможность найти требуемую информацию в таблице, а возвращенный результат вывести в определенную ячейку. Аббревиатура, обозначающая название функции, расшифровывается, как «вертикальный просмотр».
Синтаксис
Это довольно сложная формула, имеющая 4 аргумента, а ее использование имеет множество особенностей.
=ВПР(искомое_значение;таблица;номер_столбца;[интервальный_просмотр])
Давайте более подробно рассмотрим все аргументы:
- Значение, которое ищется.
- Таблица. Необходимо, чтобы было искомое значение, находящееся в первой колонке, а также значение, которое возвращается. Последнее располагается где-угодно. Пользователь может самостоятельно определиться, куда вставлять результат формулы.
- Номер столбца.
- Интервальный просмотр. Если в этом нет необходимости, то можно не приводить значение этого аргумента. Оно являет собой логическое выражение, обозначающее степень точности совпадения, которое должно быть обнаружено функцией. Если указан параметр «Истина», то тогда Excel будет искать самое близкое значение к указанному в качестве искомого. Если же указан параметр «Ложь», то функция будет искать только те значения, которые находятся в первой колонке.
На этом скриншоте мы пробуем с помощью формулы понять, сколько просмотров было осуществлено по запросу «купить планшет».
Формула 2: Если
Эта функция необходима, если пользователь хочет задать определенное условие, при котором должен осуществляться расчет или выводиться конкретное значение. Она может принимать два варианта: истинное и ложное.
Синтаксис
В формулу этой функции входит три основных аргумента, и она выглядит так:
=ЕСЛИ(логическое_выражение;«значение_если_истина»;«значение_если_ложь»).
Здесь под логическим выражением подразумевается непосредственно описывающая критерий формула. С ее помощью будут проверяться данные на предмет соответствия определенному условию. Соответственно, аргумент «значение если ложь» предназначен для той же задачи, с тем лишь отличием, что оно зеркально противоположное по смыслу. Простыми словами, если условие не подтвердилось, то программа осуществляет определенные действия.
Есть еще один вариант, как можно применять функцию ЕСЛИ – вложенные функции. Здесь может быть намного больше условий, вплоть до 64. Пример рассуждения, соответствующего формуле, приведенной на скриншоте, такой. Если ячейка А2 равна двум, то нужно вывести значение «Да». Если же она имеет другое значение, то необходимо проверить, равна ли ячейка D2 двум. Если да, то нужно выдать значение «нет», если и здесь условие оказывается ложным, то формула должна вернуть значение «возможно».
Не рекомендуется пользоваться вложенными функциями слишком часто, поскольку их использовать довольно тяжело, возможны ошибки. И потребуется немало времени, чтобы их исправить.
Функция ЕСЛИ может применяться и с целью понять, пустая ли определенная ячейка. Чтобы добиться этой цели, необходимо использовать еще одну функцию – ЕПУСТО .
Тут синтаксис следующий:
=ЕСЛИ(ЕПУСТО(номер ячейки);«Пустая»;«Не пустая»).
Кроме этого, есть возможность применять вместо функции ЕПУСТО применять стандартную формулу, но указать, что при условии отсутствия никаких значений в ячейке.
ЕСЛИ – это одна из наиболее часто встречаемых функций, которая очень легко используется и она дает возможность понять, насколько истинны те или иные значения, получить результаты по разным критериям, а также определить, является ли определенная ячейка пустой.
Эта функция является фундаментом для некоторых других формул. Некоторые из них мы сейчас проанализируем более детально.
Формула 3: СУММЕСЛИ
Функция СУММЕСЛИ позволяет суммировать данные, при условии их соответствия определенным критериям.
Синтаксис
Эта функция, аналогично предыдущей, имеет три аргумента. Чтобы ее использовать, необходимо написать такую формулу, подставив необходимые значения в соответствующих местах.
=СУММЕСЛИ(диапазон;условие;[диапазон_суммирования])
Давайте более подробно поймем, что каждый из аргументов собой являет:
- Условие. Этот аргумент позволяет передать в функцию ячейки, которые в дальнейшем подлежат суммированию.
- Диапазон суммирования. Этот аргумент не является обязательным, и он дает возможность задать ячейки, которые необходимо суммировать, если условие оказывается ложным.
Так, в данной ситуации Excel суммировал данные о тех запросах, где количество переходов превышает 100000.
Формула 4: СУММЕСЛИМН
Если же условий несколько, то используется родственная функция СУММЕСЛИМН .
Синтаксис
Формула этой функции выглядит так:
=СУММЕСЛИМН(диапазон_суммирования; диапазон_условия1; условие1; [диапазон_условия2; условие2]; …)
Обязательными являются второй и третий аргументы, а именно «Диапазон условия 1» и «условие 1».
Формула 5: СЧЕТЕСЛИ и СЧЕТЕСЛИМН
Эта функция пытается определить количество непустых ячеек, которые подходят под заданные условия в рамках диапазона, введенного пользователем.
Синтаксис
Чтобы ввести эту функцию, необходимо указать следующую формулу:
=СЧЕТЕСЛИ(диапазон;критерий)
Что означают приведенные аргументы?
- Диапазон – это совокупность ячеек, среди которой должен осуществляться подсчет.
- Критерий – условие, учитываемое при выборе ячеек.
Например, этом примере программа посчитала число ключевых запросов, где количество переходов в поисковых системах превышает сто тысяч. В итоге, формула вернула число 3, что означает, наличие трех таких ключевиков.
Если говорить о родственной функции СЧЕТЕСЛИМН, то она, аналогично предыдущему примеру, предоставляет возможность использовать сразу несколько критериев. Ее формула следующая:
=СЧЁТЕСЛИМН(диапазон_условия1;условие1;[диапазон_условия2;условие2];…)
И аналогично предыдущему случаю «Диапазон условия 1» и «условие 1» – это обязательные аргументы, другие же можно не использовать, если нет такой необходимости. Максимально функция предусматривает возможность применять до 127 диапазонов вместе с условиями.
Формула 6: ЕСЛИОШИБКА
Эта функция возвращает заданное пользователем значение, если в процессе вычисления по формуле обнаруживается ошибка. Если же получившееся значение корректное, она оставляет его.
Синтаксис
У этой функции два аргумента. Синтаксис следующий:
=ЕСЛИОШИБКА(значение;значение_если_ошибка)
- Значение – непосредственно формула, проверяемая на предмет багов.
- Значение если ошибка – результат, появляющийся после того, как ошибка будет обнаружена.
Если говорить о примерах, то данная формула покажет в случае невозможности осуществления деления текст «Ошибка при вычислении».
Формула 7: ЛЕВСИМВ
Эта функция дает возможность выделить требуемое количество символов слева строки.
Ее синтаксис следующий:
=ЛЕВСИМВ(текст;[число_знаков])
- Текст – строка, из какой требуется достать определенный фрагмент.
- Число знаков – непосредственно количество знаков, которые нужно извлекать.
Так, в данном примере видно, как эта функция используется с целью посмотреть, какой будет внешний вид у тайтлов к страницам сайтов. То есть, поместится ли строка в определенное количество знаков или нет.
Формула 8: ПСТР
Эта функция дает возможность достать требуемое количество знаков с текста, начиная определенным символом по счету.
Ее синтаксис следующий:
=ПСТР(текст;начальная_позиция;число_знаков).
- Текст – это строка, в которой содержатся необходимые данные.
- Начальная позиция – это непосредственно положение того символа, который и служит началом для извлечения текста.
- Число знаков – количество символов, которые формула должна вытащить из текста.
На практике эта функция может использоваться, например, чтобы упростить названия тайтлов, убрав слова, которые находятся в их начале.
Формула 9: ПРОПИСН
Эта функция все буквы, содержащиеся в определенной строке, делает прописными. Ее синтаксис следующий:
=ПРОПИСН(текст)
Аргумент только один – непосредственно текст, который будет обрабатываться. Можно использовать ссылку на ячейку.
Формула 10: СТРОЧН
По сути, обратная функция, которая делает строчными каждую букву заданного текста или ячейки.
Синтаксис у нее аналогичный, есть только один аргумент, содержащий текст или адрес ячейки.
Формула 11: ПОИСКПОЗ
Эта функция дает возможность найти требуемый элемент среди диапазона ячеек и выдать его положение.
Шаблон этой формулы такой:
=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;тип_сопоставления)
Первые два аргумента обязательные, последний – нет.
Существует три способа сопоставления:
- Меньше или равно – 1.
- Точное – 0.
- Самое маленькое значение, равно искомому или большего него -1.
В данном примере мы пытаемся определить, какой по какому из ключевых слов осуществляется до 900 переходов включительно.
Формула 12: ДЛСТР
Эта функция дает возможность определить, какая длина у заданной строки.
Ее синтаксис аналогичен предыдущей:
Так, она может использоваться, чтобы определить длину описания статьи при SEO-продвижении сайта.
Также ее хорошо совмещать с функцией ЕСЛИ .
Формула 13: СЦЕПИТЬ
Эта функция дает возможность сделать несколько строчек из одной. Причем допустимо указание в аргументах как адресов ячеек, так и непосредственно само значение. Формула дает возможность записать до 255 элементов общей длиной не более 8192 символа, чего предостаточно для практики.
Формула 14: ПРОПНАЧ
Эта функция меняет местами прописные и строчные символы.
Синтаксис очень простой:
=ПРОПНАЧ(текст)
Формула 15: ПЕЧСИМВ
Эта формула дает возможность убрать все невидимые знаки (например, перенос строки) из статьи.
Ее синтаксис следующий:
=ПЕЧСИМВ(текст)
В качестве аргумента можно указывать адрес ячейки.
Выводы
Конечно, это не все функции, которые используются в Excel. Мы хотели привести такие, о которых не слышал среднестатистический пользователь электронных таблиц или использует редко. По статистике наиболее часто используются функции для вычисления и выведения среднего значения. Но Excel – это больше среда разработки, чем просто программа для электронных таблиц. В ней можно автоматизировать абсолютно любую функцию.
Очень хочется надеяться, что это получилось, и вы почерпнули для себя много полезного.
Эксель формулы которые работают быстрее
Всем привет и хорошего настроения!
Захотелось перевести статью с одного из зарубежных форумов. Ссылка на оригинал. Не со всем в статье согласен, но старался держаться основной линии автора. Возможно, кому-то будет интересно.
**************
10 СОВЕТОВ КАК УЛУЧШИТЬ РАБОТУ ФОРМУЛ В EXCEL
1). Используйте таблицы для хранения данных.
Начиная с Excel 2007 можно держать связанные друг с другом данные в таблицах (Преобразование данных: «Главная» — «Стили» — «Форматировать как таблицу»). К данным в таблицах можно обращаться формулами с помощью структурных ссылок. Также данные таких таблиц можно использовать как источник для сводных таблиц. Если Вы меняете количество строк в таблице — формулы по столбцам автоматически становятся динамическими. Например, если у Вас есть таблица «Sales», то можно собрать сумму по столбцу «Turn_Over» просто введя формулу:
Формула будет работать корректно даже если в таблице уменьшилось или увеличилось количество строк.
На заметку: в 2003-м Excel есть аналог таблиц (Exel lists).
2). Используйте именованные диапазоны и формулы.
Используя именованные диапазоны и формулы Вы упростите восприятие вычислений. Более того, есть возможность провести промежуточные расчеты один раз в именованной функции вместо того, чтобы рассчитывать их отдельно для каждой ячейки. Это снимет часть вычислительной нагрузки и ускорит работу книги Excel.
3). Используйте сводные таблицы.
Бывают случаи, когда формулы нам в принципе не нужны, но мы их используем просто потому, что можем. Но разве не проще использовать сводную таблицу, где множество итогов можно получить всего в несколько кликов мышью? После построения сводной таблицы, можно ссылаться на её значения с помощью формулы ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ или простыми ссылками на её ячейки. Это избавит от необходимости выполнять необязательные вычисления. Если данные меняются, достаточно просто перейти на вкладку «Данные» и обновить все сводные в одно действие. Обновление пройдёт лучше, если исходные данные хранятся в формате таблиц.
Часто причиной медленной работы книги Excel бывает большой объём данных. И сводные таблицы были разработаны именно для того, чтобы обрабатывать большие массивы информации.
4). Сортируйте данные.
Ещё одна причина не ахти какой скорости — попытки что-то найти в куче НЕ отсортированных данных. У Excel нет выбора и ему приходится искать иголку в стоге сена. Очень часто мы получаем НЕ сортированные данные из разных источников. Отсортировав данные и использовав корректное операторы в поисковых формулах можно значительно ускорить работу книги. Если сортировать что-то приходиться регулярно — можно запустить простейший макрос сразу, как только данные обновлены.
5). Вычисление книги вручную.
Скорость — это суровая плата за сложность структуры и обилие возможностей. Одна из таких возможностей — моментальное отражение проведённых в файле изменений на результатах вычислений. Но для корректной работы книги нам далеко не всегда нужно, чтобы проходила цепочка вычислений после каждого нажатия. Зачастую, вполне достаточно переключить расчёт формул в ручной режим и проводить вычисления когда это действительно требуется. Это можно сделать, например, нажатием клавиши F9. Обратите внимание, что Excel проходит по формулам каждый раз, когда Вы сохраняете файл.
6). Старайтесь отказываться от волатильных формул.
В Excel существует особый класс формул — волатильные формулы. Они пересчитываются при ЛЮБОМ изменении в книге. Примером волатильных формул служат: СЛЧИС, СЕГОДНЯ, ТДАТА, СМЕЩ и т.д. И если лист содержит множество волатильных формул, при малейшем изменении эти формулы должны быть пересчитаны. Что сверх необходимого нагружает лист вычислениями.
Что делать? Просто откажитесь от волатильных формул. Например, чем использовать СМЕЩ для построения динамического диапазона — задействуйте ИНДЕКС. Как НЕ волатильная формула он должен работать быстрее. А ещё лучше — используйте таблицы.
7). Держите формулы на отдельном листе.
Формулы — движущая сила любой Excel книги или модели. Собрав их на отдельном листе (или нескольких), Вы уменьшите вероятность ошибок, пробелов или повторов. Работа над ускорением файла становится элементарной задачей, когда все формулы собраны в одном месте. Плюс это придаёт файлу шарм структурности и организованности.
8). Пишите хорошие формулы.
Вот несколько советов, на которые можно ориентироваться:
— Встроенные формулы удобнее Ваших собственных. Например, СУММЕСЛИМН проще заполняется аргументами и такая же быстрая, как СУММПРОИЗВ.
— Не тратьте силы Excel на работу с целым столбцом, когда требуется всего несколько значений. Не стоит писать СУММ(A:A), когда заведомо известно, что значения будут в диапазоне А1:А10.
— Используйте ЕСЛИОШИБКА для обработки ошибок вместо усложненных конструкций типа ЕСЛИ(ЕОШИБКА())
— Уберите или исправьте ошибки формул (деление на ноль, ошибки имени и т.д.).
— Уберите или сократите использование массивных формул.
— Удалите совсем или уменьшите количество ссылок на другие книги.
— Удалите любые именованные диапазоны, которые выдают ошибку или несуществующие ссылки.
— Старайтесь использовать альтернативные формулы. Это не только отточит ум, но и позволит находить интересные решения.
— Не рассчитывайте цифры, которые Вам не нужны.
— Не считайте что-либо дважды, а лучше используйте первый результат во втором вычислении.
9). Суровые времена требуют суровых мер.
Иногда, что бы Вы не делали, скорость книги всё равно оставляет желать лучшего. Ниже несколько жестких решений:
— Замена формул на значения. Сохраните формулы отдельно (или только в первой строке данных), Ctrl+C, Ctrl+Alt+V, только значения и форматы чисел.
— Сборка книги с нуля. Позволяет выбросить всё лишнее, о чём даже нельзя было догадаться.
— Замените внешние ссылки на данные собственно актуальными данными. При необходимости импортируйте данные методом копи-пасты.
— Уменьшите функциональность. Ведь пользователь наверняка как-нибудь проживет без пары-другой фишек, верно?
— Найдите альтернативное решение. Пытаться сделать в Excel абсолютно всё — глупо. Зачем копать молотком, если есть лопата? Проверьте, вдруг есть какой другой инструмент, который делает то же самое лучше и быстрее.
10). Узнавайте новые формулы и играйте с ними.
Оптимизация — вещь не определённая, до конца не регламентированная. Это продолжительный, развивающийся процесс. Всегда нужно учить новые формулы, новые применения и играть с ними. И через это откроются новые способы улучшить тормозящие книги.
Всем привет и хорошего настроения!
Захотелось перевести статью с одного из зарубежных форумов. Ссылка на оригинал. Не со всем в статье согласен, но старался держаться основной линии автора. Возможно, кому-то будет интересно.
**************
10 СОВЕТОВ КАК УЛУЧШИТЬ РАБОТУ ФОРМУЛ В EXCEL
1). Используйте таблицы для хранения данных.
Начиная с Excel 2007 можно держать связанные друг с другом данные в таблицах (Преобразование данных: «Главная» — «Стили» — «Форматировать как таблицу»). К данным в таблицах можно обращаться формулами с помощью структурных ссылок. Также данные таких таблиц можно использовать как источник для сводных таблиц. Если Вы меняете количество строк в таблице — формулы по столбцам автоматически становятся динамическими. Например, если у Вас есть таблица «Sales», то можно собрать сумму по столбцу «Turn_Over» просто введя формулу:
Формула будет работать корректно даже если в таблице уменьшилось или увеличилось количество строк.
На заметку: в 2003-м Excel есть аналог таблиц (Exel lists).
2). Используйте именованные диапазоны и формулы.
Используя именованные диапазоны и формулы Вы упростите восприятие вычислений. Более того, есть возможность провести промежуточные расчеты один раз в именованной функции вместо того, чтобы рассчитывать их отдельно для каждой ячейки. Это снимет часть вычислительной нагрузки и ускорит работу книги Excel.
3). Используйте сводные таблицы.
Бывают случаи, когда формулы нам в принципе не нужны, но мы их используем просто потому, что можем. Но разве не проще использовать сводную таблицу, где множество итогов можно получить всего в несколько кликов мышью? После построения сводной таблицы, можно ссылаться на её значения с помощью формулы ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ или простыми ссылками на её ячейки. Это избавит от необходимости выполнять необязательные вычисления. Если данные меняются, достаточно просто перейти на вкладку «Данные» и обновить все сводные в одно действие. Обновление пройдёт лучше, если исходные данные хранятся в формате таблиц.
Часто причиной медленной работы книги Excel бывает большой объём данных. И сводные таблицы были разработаны именно для того, чтобы обрабатывать большие массивы информации.
4). Сортируйте данные.
Ещё одна причина не ахти какой скорости — попытки что-то найти в куче НЕ отсортированных данных. У Excel нет выбора и ему приходится искать иголку в стоге сена. Очень часто мы получаем НЕ сортированные данные из разных источников. Отсортировав данные и использовав корректное операторы в поисковых формулах можно значительно ускорить работу книги. Если сортировать что-то приходиться регулярно — можно запустить простейший макрос сразу, как только данные обновлены.
5). Вычисление книги вручную.
Скорость — это суровая плата за сложность структуры и обилие возможностей. Одна из таких возможностей — моментальное отражение проведённых в файле изменений на результатах вычислений. Но для корректной работы книги нам далеко не всегда нужно, чтобы проходила цепочка вычислений после каждого нажатия. Зачастую, вполне достаточно переключить расчёт формул в ручной режим и проводить вычисления когда это действительно требуется. Это можно сделать, например, нажатием клавиши F9. Обратите внимание, что Excel проходит по формулам каждый раз, когда Вы сохраняете файл.
6). Старайтесь отказываться от волатильных формул.
В Excel существует особый класс формул — волатильные формулы. Они пересчитываются при ЛЮБОМ изменении в книге. Примером волатильных формул служат: СЛЧИС, СЕГОДНЯ, ТДАТА, СМЕЩ и т.д. И если лист содержит множество волатильных формул, при малейшем изменении эти формулы должны быть пересчитаны. Что сверх необходимого нагружает лист вычислениями.
Что делать? Просто откажитесь от волатильных формул. Например, чем использовать СМЕЩ для построения динамического диапазона — задействуйте ИНДЕКС. Как НЕ волатильная формула он должен работать быстрее. А ещё лучше — используйте таблицы.
7). Держите формулы на отдельном листе.
Формулы — движущая сила любой Excel книги или модели. Собрав их на отдельном листе (или нескольких), Вы уменьшите вероятность ошибок, пробелов или повторов. Работа над ускорением файла становится элементарной задачей, когда все формулы собраны в одном месте. Плюс это придаёт файлу шарм структурности и организованности.
8). Пишите хорошие формулы.
Вот несколько советов, на которые можно ориентироваться:
— Встроенные формулы удобнее Ваших собственных. Например, СУММЕСЛИМН проще заполняется аргументами и такая же быстрая, как СУММПРОИЗВ.
— Не тратьте силы Excel на работу с целым столбцом, когда требуется всего несколько значений. Не стоит писать СУММ(A:A), когда заведомо известно, что значения будут в диапазоне А1:А10.
— Используйте ЕСЛИОШИБКА для обработки ошибок вместо усложненных конструкций типа ЕСЛИ(ЕОШИБКА())
— Уберите или исправьте ошибки формул (деление на ноль, ошибки имени и т.д.).
— Уберите или сократите использование массивных формул.
— Удалите совсем или уменьшите количество ссылок на другие книги.
— Удалите любые именованные диапазоны, которые выдают ошибку или несуществующие ссылки.
— Старайтесь использовать альтернативные формулы. Это не только отточит ум, но и позволит находить интересные решения.
— Не рассчитывайте цифры, которые Вам не нужны.
— Не считайте что-либо дважды, а лучше используйте первый результат во втором вычислении.
9). Суровые времена требуют суровых мер.
Иногда, что бы Вы не делали, скорость книги всё равно оставляет желать лучшего. Ниже несколько жестких решений:
— Замена формул на значения. Сохраните формулы отдельно (или только в первой строке данных), Ctrl+C, Ctrl+Alt+V, только значения и форматы чисел.
— Сборка книги с нуля. Позволяет выбросить всё лишнее, о чём даже нельзя было догадаться.
— Замените внешние ссылки на данные собственно актуальными данными. При необходимости импортируйте данные методом копи-пасты.
— Уменьшите функциональность. Ведь пользователь наверняка как-нибудь проживет без пары-другой фишек, верно?
— Найдите альтернативное решение. Пытаться сделать в Excel абсолютно всё — глупо. Зачем копать молотком, если есть лопата? Проверьте, вдруг есть какой другой инструмент, который делает то же самое лучше и быстрее.
10). Узнавайте новые формулы и играйте с ними.
Оптимизация — вещь не определённая, до конца не регламентированная. Это продолжительный, развивающийся процесс. Всегда нужно учить новые формулы, новые применения и играть с ними. И через это откроются новые способы улучшить тормозящие книги. Rioran
Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
Сообщение Всем привет и хорошего настроения!
Захотелось перевести статью с одного из зарубежных форумов. Ссылка на оригинал. Не со всем в статье согласен, но старался держаться основной линии автора. Возможно, кому-то будет интересно.
**************
10 СОВЕТОВ КАК УЛУЧШИТЬ РАБОТУ ФОРМУЛ В EXCEL
1). Используйте таблицы для хранения данных.
Начиная с Excel 2007 можно держать связанные друг с другом данные в таблицах (Преобразование данных: «Главная» — «Стили» — «Форматировать как таблицу»). К данным в таблицах можно обращаться формулами с помощью структурных ссылок. Также данные таких таблиц можно использовать как источник для сводных таблиц. Если Вы меняете количество строк в таблице — формулы по столбцам автоматически становятся динамическими. Например, если у Вас есть таблица «Sales», то можно собрать сумму по столбцу «Turn_Over» просто введя формулу:
Формула будет работать корректно даже если в таблице уменьшилось или увеличилось количество строк.
На заметку: в 2003-м Excel есть аналог таблиц (Exel lists).
2). Используйте именованные диапазоны и формулы.
Используя именованные диапазоны и формулы Вы упростите восприятие вычислений. Более того, есть возможность провести промежуточные расчеты один раз в именованной функции вместо того, чтобы рассчитывать их отдельно для каждой ячейки. Это снимет часть вычислительной нагрузки и ускорит работу книги Excel.
3). Используйте сводные таблицы.
Бывают случаи, когда формулы нам в принципе не нужны, но мы их используем просто потому, что можем. Но разве не проще использовать сводную таблицу, где множество итогов можно получить всего в несколько кликов мышью? После построения сводной таблицы, можно ссылаться на её значения с помощью формулы ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ или простыми ссылками на её ячейки. Это избавит от необходимости выполнять необязательные вычисления. Если данные меняются, достаточно просто перейти на вкладку «Данные» и обновить все сводные в одно действие. Обновление пройдёт лучше, если исходные данные хранятся в формате таблиц.
Часто причиной медленной работы книги Excel бывает большой объём данных. И сводные таблицы были разработаны именно для того, чтобы обрабатывать большие массивы информации.
4). Сортируйте данные.
Ещё одна причина не ахти какой скорости — попытки что-то найти в куче НЕ отсортированных данных. У Excel нет выбора и ему приходится искать иголку в стоге сена. Очень часто мы получаем НЕ сортированные данные из разных источников. Отсортировав данные и использовав корректное операторы в поисковых формулах можно значительно ускорить работу книги. Если сортировать что-то приходиться регулярно — можно запустить простейший макрос сразу, как только данные обновлены.
5). Вычисление книги вручную.
Скорость — это суровая плата за сложность структуры и обилие возможностей. Одна из таких возможностей — моментальное отражение проведённых в файле изменений на результатах вычислений. Но для корректной работы книги нам далеко не всегда нужно, чтобы проходила цепочка вычислений после каждого нажатия. Зачастую, вполне достаточно переключить расчёт формул в ручной режим и проводить вычисления когда это действительно требуется. Это можно сделать, например, нажатием клавиши F9. Обратите внимание, что Excel проходит по формулам каждый раз, когда Вы сохраняете файл.
6). Старайтесь отказываться от волатильных формул.
В Excel существует особый класс формул — волатильные формулы. Они пересчитываются при ЛЮБОМ изменении в книге. Примером волатильных формул служат: СЛЧИС, СЕГОДНЯ, ТДАТА, СМЕЩ и т.д. И если лист содержит множество волатильных формул, при малейшем изменении эти формулы должны быть пересчитаны. Что сверх необходимого нагружает лист вычислениями.
Что делать? Просто откажитесь от волатильных формул. Например, чем использовать СМЕЩ для построения динамического диапазона — задействуйте ИНДЕКС. Как НЕ волатильная формула он должен работать быстрее. А ещё лучше — используйте таблицы.
7). Держите формулы на отдельном листе.
Формулы — движущая сила любой Excel книги или модели. Собрав их на отдельном листе (или нескольких), Вы уменьшите вероятность ошибок, пробелов или повторов. Работа над ускорением файла становится элементарной задачей, когда все формулы собраны в одном месте. Плюс это придаёт файлу шарм структурности и организованности.
8). Пишите хорошие формулы.
Вот несколько советов, на которые можно ориентироваться:
— Встроенные формулы удобнее Ваших собственных. Например, СУММЕСЛИМН проще заполняется аргументами и такая же быстрая, как СУММПРОИЗВ.
— Не тратьте силы Excel на работу с целым столбцом, когда требуется всего несколько значений. Не стоит писать СУММ(A:A), когда заведомо известно, что значения будут в диапазоне А1:А10.
— Используйте ЕСЛИОШИБКА для обработки ошибок вместо усложненных конструкций типа ЕСЛИ(ЕОШИБКА())
— Уберите или исправьте ошибки формул (деление на ноль, ошибки имени и т.д.).
— Уберите или сократите использование массивных формул.
— Удалите совсем или уменьшите количество ссылок на другие книги.
— Удалите любые именованные диапазоны, которые выдают ошибку или несуществующие ссылки.
— Старайтесь использовать альтернативные формулы. Это не только отточит ум, но и позволит находить интересные решения.
— Не рассчитывайте цифры, которые Вам не нужны.
— Не считайте что-либо дважды, а лучше используйте первый результат во втором вычислении.
9). Суровые времена требуют суровых мер.
Иногда, что бы Вы не делали, скорость книги всё равно оставляет желать лучшего. Ниже несколько жестких решений:
— Замена формул на значения. Сохраните формулы отдельно (или только в первой строке данных), Ctrl+C, Ctrl+Alt+V, только значения и форматы чисел.
— Сборка книги с нуля. Позволяет выбросить всё лишнее, о чём даже нельзя было догадаться.
— Замените внешние ссылки на данные собственно актуальными данными. При необходимости импортируйте данные методом копи-пасты.
— Уменьшите функциональность. Ведь пользователь наверняка как-нибудь проживет без пары-другой фишек, верно?
— Найдите альтернативное решение. Пытаться сделать в Excel абсолютно всё — глупо. Зачем копать молотком, если есть лопата? Проверьте, вдруг есть какой другой инструмент, который делает то же самое лучше и быстрее.
10). Узнавайте новые формулы и играйте с ними.
Оптимизация — вещь не определённая, до конца не регламентированная. Это продолжительный, развивающийся процесс. Всегда нужно учить новые формулы, новые применения и играть с ними. И через это откроются новые способы улучшить тормозящие книги. Автор — Rioran
Дата добавления — 30.04.2015 в 11:26
Самый быстрый ВПР
Если в ваших таблицах всего лишь несколько десятков строк, то, скорее всего, эта статья не будет для вас актуальной. На таких небольших объемах данных любой способ будет работать достаточно шустро, чтобы вы этого не замечали. Если же число строк в ваших списках измеряется тысячами, да и самих таблиц не одна-две, то время мучительного ожидания на пересчете формул в Excel может доходить до нескольких минут.
В этом случае, правильный выбор функции, применяемой для связывания таблиц, играет решающую роль — разница в производительности между ними, как мы увидим далее, может составлять более 20 раз!
Когда я писал свою первую книжку пять лет назад, то уже делал сравнительный скоростной тест различных способов поиска и подстановки данных функциями ВПР, ИНДЕКС+ПОИСКПОЗ, СУММЕСЛИ и др. С тех пор сменилось три версии Office, появились надстройки Power Query и Power Pivot, кардинально изменившие весь процесс работы с данными. А в прошлом году ещё и обновился вычислительный движок Excel, получив поддержку динамических массивов и новые функции ПРОСМОТРХ, ФИЛЬТР и т.п.
Так что пришла пора снова взяться за секундомер и выяснить — кто же самый быстрый. Ну и, заодно, проверить — какие способы поиска и подстановки данных в Excel вы знаете 🙂
Подопытный кролик
Тест будем проводить на следующем примере:
Это книга Excel с одним листом, где расположены две таблицы: отгрузки (500 000 строк) и прайс-лист (600 строк). Наша задача — подставить цены из прайс-листа в таблицу отгрузок. Для каждого способа будем вводить формулу в ячейку С2 и копировать вниз на весь столбец, замеряя время, которое потребуется Excel, чтобы просчитать весь столбец из полумиллиона ячеек. Полученные значения, безусловно, зависят от множества факторов (поколение процессора, объем оперативной памяти, текущая загрузка системы, версия Office и т.д.), но нам важны не конкретные цифры, а, скорее, их сравнение друг с другом. Важно понимать прожорливость каждого способа и их ограничения.
Способ 1. ВПР
Сначала — классика 🙂 Легендарная функция вертикального просмотра — ВПР (VLOOKUP) , которая приходит в голову первой в подобных ситуациях:
- B2 — искомое значение, т.е. название товара, который мы хотим найти в прайс-листе
- $G$2:$H$600 — закреплённая знаками доллара (чтобы не сползала при копировании формулы вниз) абсолютная ссылка на прайс
- 2 — номер столбца в прайс-листе, откуда мы хотим взять цену
- 0 или ЛОЖЬ — переключение в режим поиска точного соответствия, когда любое некорректное название товара (например, ФОНЕРА) в столбце B в таблице отгрузок приведёт к появлению ошибки #Н/Д как результата работы функции.
Время вычисления = 4,3 сек.
Способ 2. ВПР с выделением столбцов целиком
Многие пользователи, применяя ВПР, во втором аргументе этой функции, где нужно задать поисковую таблицу (прайс), выделяют не ограниченный диапазон ( $G$2:$H$600 ), а сразу столбцы G:H целиком. Это проще, быстрее, позволяет не думать про F4 и то, что завтра прайс-лист может быть на несколько строк больше. Формула в этом случае выглядит тоже компактнее:
В старых версиях Excel такое выделение не сильно влияло на скорость вычислений, но сейчас (неожиданно для меня, признаюсь) результат получился в разы хуже предыдущего.
Время вычисления = 14,5 сек.
Способ 3. ИНДЕКС и ПОИСКПОЗ
Следующей после ВПР ступенью эволюции для многих пользователей Microsoft Excel обычно является переход на использование связки функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) . Выглядит эта формула так:
Функция ИНДЕКС извлекает из заданного в первом аргументе диапазона (столбца $H$2:$H$600 с ценами в прайс-листе) содержимое ячейки с заданным номером. А номер этот, в свою очередь, определяется функцией ПОИСКПОЗ, у которой три аргумента:
- Что нужно найти — название товара из B2
- Где мы это ищем — столбец с названиями товаров в прайсе ( $G$2:$G$600 )
- Режим поиска: 0 — точный, 1 или -1 — приблизительный с округлением в меньшую или большую сторону, соответственно.
Формула выходит чуть сложнее, но, при этом имеет несколько ощутимых преимуществ перед классической ВПР, а именно:
- Не нужно отсчитывать номер столбца (как в третьем аргументе ВПР).
- Можно извлекать данные, которые находятся левее столбца, где просходит поиск.
По скорости, однако же, этот способ проигрывает ВПР почти в два раза:
Время вычисления = 7,8 сек.
Если же, вдобавок, полениться и выделять не ограниченные диапазоны, а столбцы целиком:
. то результат получается совсем печальный:
Время вычисления = 28,5 сек.
28 секунд, Карл! В 6 раз медленнее ВПР!
Способ 4. СУММЕСЛИ
Если нужно найти не текстовые, а именно числовые данные (как в нашем случае — цену), то вместо ВПР вполне можно использовать функцию СУММЕСЛИ (SUMIF) . Изначально она задумывалась как инструмент для выборочного суммирования данных по условию (найди и сложи мне все продажи кабелей, например), но можно заставить её искать нужный нам товар и в прайс-листе. Если грузы в нём не повторяются, то суммировать будет не с чем и эта функция просто выведет искомое значение:
- Первый аргумент СУММЕСЛИ — это диапазон проверяемых ячеек, т.е. названия товаров в прайсе ( $G$2:$G$600 ).
- Второй аргумент ( B2 ) — что мы ищем.
- Третий аргумент — диапазон ячеек с ценами $H$2:$H$600 , числа из которых мы хотим просуммировать, если в соседних ячейках проверяемого диапазона есть искомое значение.
Очевидным минусом такого подхода является то, что он работает только с числами. Также этот способ не удобен, если прайс-лист находится в отдельном файле — придется всё время держать его открытым, т.к. функция СУММЕСЛИ не умеет брать данные из закрытых книг, в отличие от ВПР, для которой это не проблема.
В плюсы же можно записать удобство при поиске сразу по нескольким столбцам — для этого идеально подходит более продвинутая версия этой функции — СУММЕСЛИМН (SUMIFS) . Скорость вычислений же, при этом, весьма посредственная:
Время вычисления = 12,8 сек.
При выделении столбцов целиком, т.е. использовании формулы вида =СУММЕСЛИ( G:G ; B2 ; H:H ) всё ещё хуже:
Время вычисления = 41,7 сек.
Это самый плохой результат в нашем тесте.
Способ 5. СУММПРОИЗВ
Этот подход сейчас встречается не часто, но всё ещё достаточно регулярно. Обычно так любят извращаться пользователи старой школы, ещё хорошо помнящие те времена, когда в Excel было всего 255 столбцов и 56 цветов 🙂
Суть этого метода заключается в использовании функции СУММПРОИЗВ (SUMPRODUCT) , изначально предназначенной для поэлементного перемножения нескольких диапазонов с последующим суммированием полученных произведений. В нашем случае, вместо одного из массивов будет выступать условие, а вторым будут цены:
Выражение ($G$2:$G$600=B2) , по сути, проверяет каждое название груза в прайс-листе на предмет соответствия искомому значению (ФАНЕРА ПР). Результатом каждого сравнения будет логическое значение ИСТИНА (TRUE ) или ЛОЖЬ (FALSE) , что в Excel интерпретируется как 1 и 0, соответственно. Последующее умножение этих нулей и единиц на цены оставит в живых цену только того товара, который нам, в данном случае, и нужен.
Эта формула является, по сути, формулой массива, но не требует нажатия обычного для них сочетания клавиш Ctrl + Shift + Enter , т.к. функция СУММПРОИЗВ поддерживает массивы уже сама по себе. Возможно, по этой же причине (формулы массива всегда медленнее, чем обычные) такой скорость пересчёта такой формулы — не очень:
Время вычисления = 11,8 сек.
- Совместимость с любыми, самыми древними версиями Excel.
- Возможность задавать сложные условия (и несколько)
- Способность этой формулы работать с данными из закрытых файлов, если добавить перед ней двойное бинарное отрицание (два подряд знака «минус»). СУММЕСЛИМН таким похвастаться не может.
Способ 6. ПРОСМОТР
Ещё один относительно экзотический способ поиска и подстановки данных, наравне с ВПР — это использование функции ПРОСМОТР (LOOKUP) . Только не перепутайте её с новой, буквально, на днях появившейся функцией ПРОСМОТРХ (XLOOKUP) — про неё мы поговорим дальше особо. Функция ПРОСМОТР существовала в Excel начиная с самых ранних версий и тоже вполне может решить нашу задачу:
- B2 — название груза, которое мы ищем
- $G$2:$G$600 — одномерный диапазон-вектор (столбец или строка), где мы ищем совпадение
- $H$2:$H$600 — такого же размера диапазон, откуда нужно вернуть найденный результат (цену)
На первый взгляд всё выглядит очень удобно и логично, но всю картину портят два неочевидных момента:
- Эта функция требует обязательной сортировки прайс-листа по возрастанию (алфавиту) и без этого не работает.
- Если в таблице отгрузок искомое значение будет написано с опечаткой (например, АГ Е ДОЛ вместо АГИДОЛ), то функция ПРОСМОТР выдаст не ошибку #Н/Д, а цену для ближайшего предыдущего товара:
При работе с неидеальными данными в реальном мире это гарантированно создаст проблемы, как вы понимаете.
Скорость же вычислений у функции ПРОСМОТР (LOOKUP) весьма приличная:
Время вычисления = 7,6 сек.
Способ 7. Новая функция ПРОСМОТРХ
Эта функция пришла с одним из недавних обновлений пока только пользователям Office 365 и пока отсутствует во всех остальных версиях (Excel 2010, 2013, 2016, 2019). По сравнению с классической ВПР у этой функции есть масса преимуществ (упрощенный синтаксис, возможность искать не только сверху-вниз, возможность сразу задать значение вместо #Н/Д и т.д.) Формула для решения нашей задачи будет выглядеть в этом случае так:
Если не брать в расчёт необязательные 4,5,6 аргументы, то синтаксис этой функции полностью совпадает с её предшественником — функцией ПРОСМОТР (LOOKUP) . Скорость вычислений при тестировании на наши 500000 строк тоже оказалась аналогичной:
Время вычисления = 7,6 сек.
Почти в два раза медленнее, чем у ВПР, вместо которой Microsoft предлагает теперь использовать ПРОСМОТРХ. Жаль.
И, опять же, если полениться и выделить диапазоны в прайс-листе целыми столбцами:
. то скорость падает до совершенно неприличных уже значений:
Время вычисления = 28,3 сек.
А если на динамических массивах?
Прошлогоднее (осень 2019) обновление вычислительного движка Microsoft Excel добавило ему поддержку динамических массивов (Dynamic Arrays), о которых я уже писал. Это принципиально новый подход к работе с данными, который можно использовать почти с любыми классическими функциями Excel. На примере ВПР это будет выглядеть так:
Разница с классическим вариантом в том, что первым аргументом ВПР здесь выступает не одно искомое значение (а формулу потом нужно копировать вниз на остальные строки), а сразу весь массив из полумиллиона грузов B2:B500000, цены для которых мы хотим найти. Формула при этом сама распространяется вниз, занимая требуемое количество ячеек.
Скорость пересчета в таком варианте меня, откровенно говоря, ошеломила — пауза между нажатием на Enter после ввода формулы и получением результатов почти отсутствовала.
Время вычисления = 1 сек.
Что интересно, и новая ПРОСМОТРХ, и старая ПРОСМОТР, и связка ИНДЕКС+ПОИСКПОЗ в таком режиме тоже были очень быстрыми — время вычислений не больше 1 секунды! Фантастика.
А вот олдскульные подходы на основе СУММПРОИЗВ и СУММЕСЛИ(МН) с динамическими массивами работать отказались 🙁
Что с умными таблицами?
Обрадовавшись фантастическим результатам, полученным на динамических массивах, я решил вдогон попробовать протестировать разницу в скорости при работе с обычными и «умными» таблицами. Я имею ввиду те самые «красивые таблицы», в которые вы можете преобразовать ваш диапазон с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .
Если предварительно превратить наши отгрузки и прайс в «умные» (по умолчанию они получат имена Таблица1 и Таблица2, соответственно), то формула с той же ВПР будет выглядеть как:
- [@Груз] — ссылка на ячейку B2, означающая, в данном случае, что нужно взять значение из той же строки из столбца Груз текущей умной таблицы.
- Таблица2 — ссылка на прайс-лист
Жирным плюсом такого подхода будет возможность легко добавлять данные в наши таблицы в будущем. При дописывании новых строк в отгрузки или к прайс-листу, наши «умные» таблицы будут растягиваться автоматически.
Скорость же, как выяснилось, тоже вырастает очень значительно и примерно равна скорости работы на динамических массивах:
Время вычисления = 1 сек.
У меня есть подозрение, что дело тут не в самих «умных» таблицах, а всё в том же обновлении вычислительного движка, т.к. на старых версиях Excel такого прироста в скорости на умных таблицах я не помню.
Бонус. Запрос Power Query
Замерять, так замерять! Давайте, для полноты картины, сравним наши перечисленные способы еще и с запросом Power Query, который тоже может решить нашу задачу. Кто-то скажет, что некорректно сравнивать пересчёт формул с механизмом обновления запроса, но мне, откровенно говоря, просто самому было интересно — кто быстрее?
- Превращаем обе наши таблицы в «умные» с помощью команды Форматировать как таблицу на вкладке Главная (Home — Format as Table) или с помощью сочетания клавиш Ctrl + T .
- По очереди загружаем таблицы в Power Query с помощью команды Данные — Из таблицы / диапазона (Data — From Table/Range) .
- После загрузки в Power Query возвращаемся обратно в Excel, оставляя загруженные данные как подключение. Для этого в окне Power Query выбираем Главная — Закрыть и загрузить — Закрыть и загрузить в. — Только создать подключение (Home — Close&Load — Close&Load to. — Only create connection) .
- После того, как обе исходные таблицы будут загружены как подключения, создадим ещё один, третий запрос, который будет объединять их между собой, подставляя цены из прайса в отгрузки. Для этого на вкладке Данные выберем Получить данные / Создать запрос — Объединить запросы — Объединить (Get Data / New Query — Merge queries — Merge) :
В отличие от формул, запросы Power Query не обновляются автоматически «на лету», а требуют щелчка правой кнопкой мыши по таблице (или запросу в правой панели) и выбору команды Обновить (Refresh) . Также можно воспользоваться командой Обновить все (Refresh All) на вкладке Данные (Data) .
Время обновления = 8,2 сек.
Итоговая таблица и выводы
Если вы честно дочитали до этого места, то какие-то выводы, наверное, уже сделали самостоятельно. Если же пропустили все детали и сразу перешли к итогам, то вот вам общая результирующая таблица по скорости всех методов:
Само-собой, у каждого из нас свои предпочтения, задачи и тараканы, но для себя я сформулировал выводы после этого тестирования так:
Hard-Excel без тормозов, борьба с Гига-книгами
Часто в работе приходится сталкиваться с гигантскими файлами Excel в которых пользователи чего только не всунут, иногда размер таких файлов достигает 100Мб (даже без рисунков), поэтому решил написать именно о двух самых распространённых причинах зависания гига-книг бухгалтеров и других пользователей, практикующих вуду в Excel. Конечно, вы можете найти данную информацию в интернете, но лучше себе сохранить пару картинок, чем тратить время. И так начнём.
1.Если данные в документ excel вставляются листами или столбцами/строками из файлов, созданных в ИНФИН, 1С, SAP и других подобных ERP-системах, а также с других книг excel. При этом они генерируют в файл «пустые» ячейки (забитые пробелами) и объекты типа “Надпись” . Успешно практикующий бухгалтер, может копировать некоторые столбцы годами. Со временем файл становится очень объёмным, так как забивается. Решение следующее:
Включаем вкладку “Разработчик”
Далее вызываем редактор нажав Alt+F11 (если у вас не вызывается можно включить вручную)
Создаётся новый макрос module1 в который нам нужно внести следующие строки (пункт 2) :
Sub DeleteAllTextBox()
Dim oSh As Shape
For Each oSh In ActiveSheet.Shapes
Сохраняем данные изменения и подтверждаем(пункты 3,4,5).
Закрываем данное окно и уже в самом Excel применяем этот макрос перейдя во вкладку
“Разработчик” и выбрав “Макросы” — “DeleteAllTextBox”
___________________________________________________________________________________
2. В файле есть много разных формул, в особых случаях, прописанных на каждую ячейку, либо ячейка имеет очень много связей. В таком случае изначально включённая функция Excel “автоматического завершения записей” начинает приносить вред вместо пользы, так как из-за сложности связей ячеек предугадать по правилу предыдущих записей она уже не может и вместо этого начинает жёстко тупить. Достаточно просто отключить данную функцию и всё заработает в разы быстрее.
Надеюсь кому-то пригодится, всем спасибо за внимание
639 постов 14.6K подписчиков
Правила сообщества
2. Публиковать посты соответствующие тематике сообщества
3. Проявлять уважение к пользователям
4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.
По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях
Важно — сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.
Утверждения вроде «пост — отстой», это оскорбление автора и будет наказываться баном.
И заработала книга быстро и неправильно.
Когда нужно вырыть котлован подгоняют бульдозер, а не ковыряют лопатой. Когда размеры таблиц превышают 100 Мб Excel — неправильный инструмент
Благодарю за информацию. Пошла отключать автомат
А перед этим всем — включить надстройку Inquire и сделать Clean excess cell formating на всех листах.
Офисные будни
Сейчас состоялся диалог с коллегой.
К: DDlix, а как сложить значения нескольких ячеек в экселе? Каждый раз плюсы писать муторно.
Я: =СУММ и выделяешь нужные ячейки
*кряхтит ещё минут пять и выдаёт*
К: Не получается, пишет: «ИМЯ??»
Я: Ну так и пиши — Настя
Я: Подхожу и с каменным лицом показываю ошибку, выхожу из кабинета, чтобы просмеяться.
Вот до чего приводит коктейль из доверия и незнания офисных программ:)
EXCEL — ЭТИ СТРАШНЫЕ МАКРОСЫ – НАЧАЛО
Я решил с двух ног ворваться в тему макросов.
Кто-то про них слышал, кто-то даже видел, отдельные сверхразумы их даже использовали. Сегодня будет ознакомительный пост: что это вообще такое и как с этим начать работать. Обратите внимание – этот пост тех, кто не знает, что такое макросы и никогда с ними не работал
Первым делом нужно включить вкладку «Разработчик». По умолчанию в Excel ее спрятали, чтобы не взорвать мозг юзерам. Идем в Параметры -> Настройка ленты -> Основные вкладки -> Разработчик (поставить галочку).
Теперь идем в эту вкладку, нажимаем «Записать макрос» выбираем имя жмакаем «ок». Все, теперь любые действия в Excel надежным образом записываются.
Давайте теперь что-то сделаем. На пример поменяем заливку ячейки А1, в ячейку A2 напишем значение «Мама, я программист», а в ячейке А3 пропишем формулу текущей даты «=Сегодня()»
Останавливаем запись макроса. Нажимаем иконку «Макросы», выбираем наш макрос как мы его обозвали, нажимаем кнопку «изменить».
Появляется окно Microsoft Visual Basic for Applications. Кстати оно также вызывается комбинацией клавиш (Alt + F11) У меня почему-то вызывается только левым Altом, а правым нет, видимо намекая на то что для написания макросов лучше иметь 2 руки (хотя я и одной нажать могу). Появился редактор языка VBA – это язык, который написан специально под офис чтобы на нем писать макросы. В основном окне видим саму эту запись, которую автоматически сделал Excel.
Sub Макрос2()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range(«A2»).Select
ActiveCell.FormulaR1C1 = «Мама, я программист»
Range(«A3»).Select
ActiveCell.FormulaR1C1 = «=TODAY()»
Range(«A4»).Select
End Sub
Такой инструмент автоматической записи называется макрорекордер, по началу он хорошо помогает вообще понять, что происходит. Теперь давайте разберемся как выглядит записанный макрос (записанный макрос у автора этой статьи может различаться с записанным макросом у вас поскольку форма записи с макроса зависит от последовательности нажатий, способах ввода информации и криворукости пользователь, в любом случае автор этой статьи снимает с себя всю ответственность за любые действия которые привели или могут привести к изменению годовых отчетов, искажению пространственное – временного континуума и прочих непредвиденных вымираний.)
Теперь давайте разбираться что делает этот макрос
Sub Макрос2()
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
(Весь этот кусок от начала говорит нам о том, что с тем элементом что был выделен ранее происходит некоторое дерьмо, в том числе изменение цвета. Вот там, где Color = 255. Все остальное это параметры заливки, которые по итогу не менялись, но макрорекордер решил их тоже записать, на всякий. Это связано с внутренними особенностями работы excel как я понял. Вообще привыкайте к тому что макрорекордер пишет много того что потом вообще можно удалить. Конструкция With – End With позволяет делать несколько действий с одним объектом, на пример выше берется объект Selection.Interior, то есть фон выбранной области и ряду параметров этой заливки назначаются конкретные значения. То есть With нужен для облегчения записи кода, чтобы Selection.Interior не писать вначале каждой строчки.
Range(«A2»).Select –выделяем ячейку «A2»
ActiveCell.FormulaR1C1 = «Мама, я программист» – пишем в ячейку значение
Range(«A3»).Select – выделяем ячейку «А3»
ActiveCell.FormulaR1C1 = «=TODAY()» –пишем в ячейку формулу
Range(«A4»).Select – зачем то выделяем ячейку А4.
End Sub
Теперь при создании нового листа и запуске этого макроса он будет делать все то же самое.
Тут стоит понимать, что половину того что записал макрос можно опустить, так как нам важен результат, а не путь по которому к этому результату пришли, а макрорекордер записывает именно путь. На пример вместо всей конструкции With можно записать
так как мы точно знаем, что хотим поменять только цвет в ячейке А1. Также вместо того чтобы выделять ячейку, а потом в активной ячейке писать формулу можно сразу записать нужное значение в ячейку
Range(“A2”).Value = ”Мама, я программист”
или писать формулу как в третей ячейке
С формулами и значениями лично мне не понятно, как excel их интерпретирует, но в макрорекордре он записывает любой ввод в ячейку как ввод формулы. Благо лично у меня при написании макросов не возникает необходимости писать формулы в ячейки. На пример вместо вставки формулы как это было выше можно написать Range(“A3”).Value = Date(), тогда макрос вставит сразу текущую дату в ячейку как значение.
Опытные макроделы пишут макросы сразу без их записи макрорекордером, но это полезный инструмент для самостоятельного изучения при написании макросов: если не знаешь, что как делается в VBА то запускаешь и делаешь, потом смотришь что он там написал.
Теперь давайте напишем какой ни будь полезный макрос, я буду писать строчки и как можно подробнее их комментировать. Комментарии от программы отделяются символом «‘», он ставится вначале комментария. Прошу учесть, что я самоучка и многого не знаю, и просто напишу так ка делаю это сам, возможно есть более изящные решения. Напоминаю, что это просто ознакомительный опус для тех, кто не в зуб ногой.
Sub Colorization()
‘начало нашего макроса и его название
Dim x As Integer
‘объявляем переменную х типа интеджер, это тип для целых чисел от -32 768 до 32 767 (2 байта),
‘она нам нужна для перебора ячеек
For x = 1 To ActiveSheet.UsedRange.Rows.Count
‘перебираем х от 1 до конца использованной части листа, то есть не весь лист, а там где есть данные.
‘Тут цикл For повторяется от этой строки до строки Next x, которая прописана ниже
If Cells(x, 1).Value = «красный» Then Cells(x, 1).Interior.Color = RGB(255, 0, 0)
‘если значение в ячейке равно «красный» то закрашиваем ячейку в красный цвет. Функция If выполняет часть
‘после Then если условие между If и Then верно. Так как у нас необходимое действие занимает одну
‘строку можно писать в таком виде, если же действий несколько применяется конструкция:
‘If … Then
‘…
‘…
‘End If
If Cells(x, 1).Value = «зеленый» Then Cells(x, 1).Interior.Color = RGB(0, 255, 0)
‘как выше только в зеленый цвет
If Cells(x, 1).Value = «синий» Then Cells(x, 1).Interior.Color = RGB(0, 0, 255)
‘в синий цвет
Next x ‘берем следующее значение х, конец цикла For, который мы начали выше
End Sub ‘конец макроса
Как работает этот макрос: берет первый столбец, сначала 1 ячейку, смотрит что в ней написано, и если это равно «красный», «зеленый» или «синий», то красит фон ячейки в этот цвет, если нет по пропускает. Потом берет вторую и т. д. до конца активной части текущего листа.
Для проверки работы макроса нам нужен лист, где в первом столбце будут случайным образом прописаны цвета «красный», «зеленый», «синий». Запускаем макрос – когда он отработает ячейки будут раскрашены:
Некоторые пояснения: если не писать просто Cells то макрос будет делать все в активном листе активного окна. Но макрос может идти и в другие листы, файлы, даже в другие приложения офиса, но об этом не сегодня.
После того, как макрос поработал с документом, не удастся кнопкой «назад» вернуть все изменения, так что, если данные важны, то сохраняйте их отдельно и макросом работайте с копией, макросы беспощадны.
Итак, на этом пока все. Надеюсь теперь те, кто никогда не видел макросов получат о них начальное представление. Дальше буду писать про более практичное применение.
Ответ на пост «О кадрах, которые решают все»
Подсчетом на калькуляторе мало уже кого можно удивить. Много случаев было, парочку самых запомнившихся:
№1:
Работал «компьютерным мастером» в одном гос.учреждении. Всякие формулы и автосуммы были показаны, настроены и объяснены в первые пару дней. Где-то день на четвертый зовет главбух, начинает объяснять, что почему-то неправильно excel считает, прошу показать, что именно, тыкаю по ячейкам, формулы верные, говорю мол все правильно.
— Нет, смотри вот в этой ячейке (обводит квадратом ячейку КАРАНДАШОМ НА МОНИТОРЕ и еще подчеркивает это, типа вот так:)
Она: вот в этой ячейке должно было получиться 427, а получилось 437.
Я: а с чего вы вдруг решили, что тут должно получиться 427? По формуле все правильно считается.
Она: ну я вот решила на калькуляторе проверить, не сходится
(оказалось просто на калькуляторе неверную цифру вводила) 🤦♂️
Если распечатать какую-нибудь страницу из браузера, то сверху будет заголовок и адрес страницы, например:
Хожу по кабинетам, смотрю девочка одна, что-то в ворде печатает, а на столе целый ворох таких вот распечатанных листов… Ну мало ли что.
На следующий день ситуация повторяется, подхожу, спрашиваю:
— что делаешь?
— да вот, курсовую пишу
Первая мысль: кто-то поделился распечатками, а сайт просто недоступен уже. Не беда, сканер есть, щас поставим какой-нибудь FineReader, все быстрее чем вручную перепечатывать.
— а распечатки где взяла?
— нашла в интернете и распечатала
— что. 😮
Молча отодвигаю ее от клавиатуры, беру листок, ввожу адрес сайта, выделяю там текст, копирую и вставляю в Word. Ее лицо после этого уже нельзя передать через эмодзи 🙂 По-моему у нее тогда весь мир перевернулся, оказывается она уже четвертый день этим занимается.
Ответ GAADyka в «О кадрах, которые решают все»
Как-то я пришёл работать руководителем ИТ подразделения в одну небольшую (120 человек), но серьезную организацию. Сотрудники подразделения рассказали о том как они работают в том числе о поддержке пользователей. Один из пунктов было, что один человек должен быть дежурным по субботам.
Устно узнал (журнал тоже не вёлся), что почти все заявки были по Word и Excel.
Сказал, чтобы не выходили по субботам, а если поступит такая заявка чтобы отправляли ко мне. После примерно 5 обращений заявок больше не было. А я им всем говорил, что у них в резюме у всех есть пункт о том какие они все офигенные пользователи ПК и Ms office. И если это не так, то это несоответствие должности. Некоторые директора департаментов даже пожаловались генеральному директору, но он поддержал меня.
PS: В качестве бонуса всем сделали рассылку на обучалки по Word, Excel и Power point. Заявки потом были очень редкими, но интересными, когда совместно делали сложные формулы и чуть ли не макросы писали.
Ответ на пост «О кадрах, которые решают все»
Лет 10 назад работал администратором в маленькой конторе прямых продаж, всего администраторов было трое, работали сутки через двое.
Прихожу однажды на смену и коллега, с красными от напряжения глазами, сообщает что нужно обработать в ручную базу входящих звонков — перебить со скринов номера в эксель для массовой смс рассылки. Почему база была на скринах, а не таблицей для меня до сих пор загадка.
Короче за двое суток несчастные дамы смогли вбить только один скрин из 15. Меня такая перспектива не особо устраивала и пошерстив интернет нашёл программу для преобразования текста с пдф в текст в ворде, ну а оттуда уже копировал в эксель. В общей сложности на обработку оставшихся листов потратил часа полтора с перекурами.
Премию не дали к сожалению, но коллеги были безумно благодарны)
Ответ zvukoregisser в «О кадрах, которые решают все»
Подержите мое пиво (с)
1998 год. Очередной «гениальный» проект от московских управленцев.
46 тысяч бухгалтерских проводок за несколько лет с максимально развернутой трехуровневой аналитикой по дебиту/кредиту надо крайне срочно забить в БД на Оракле за 1,5 месяца на двоих операторов ПЭВМ.
Набивать можно было в силу специфики ПО только на одном компьютере.
Рабочий день длился посменно с 6 утра и до 24 часов практически без выходных.
И ведь сделали. Правда едва успели.
Мне было чуть за двадцать. Она, симпатичная мадам, чуть, но не критично постарше, только после развода.
Вместе столкнулись вплотную только на этом проекте.
И, как говорится: «Ну что могло пойти не так» (с)
На работе еблись как кролики.
И с базой данных и с друг другом)
И аналитикой и с оралитикой)
До сих пор вспоминаю то время с легкой ностальгией от поручика Ржевского:
«Эх молодость! Членом туда, членом суда!»)
Ответ TheNail666 в «О кадрах, которые решают все»
Автоматизация эт хорошо. но если доступно только ручную?
Дано: начало 90-х, автозавод по принципу «отвертка-болт
-деталька», 5 тысяч народу надо загнать в прогу, работающую под DOS. Все данные надо вносить вручную, беря их из картотеки (бумажной, Карл!) ОК, при этом все коды (профессия, образование, и т.п.) брать из распечатки с еще советскими кодами. и если нужного кода нет — подбирать максимально соответствующий. И никого не ипет, как ты это будешь делать за 1 месяц на тормознутом 286-turbo, потому что на пол ставки ты оператор ЭВМ, а значит должен уметь во все, что включается в розетку чуть посложнее утюга. И да, никакой премии — это ж четыреждыблять твои обязанности!
ПыСы: базу загнал, правда не выспался конкретно. Заодно научился классно в тетрис, бумер и джангл баттле рубиться)))
Ответ на пост «О кадрах, которые решают все»
У меня была похожая ситуация, которая оказала на меня наибольшее влияние и дала сильную мотивацию продолжать заниматься программированием.
На моей первой работе одной из задач у меня была автоматизация сбора запросов подразделений на канцтовары. Как было раньше — каждый отдел писал менеджеру по закупкам письмо раз в месяц, менеджер составляла эксель по всем запросам, сводила требования в общий вид(папка = папка А4 = папка для бумаги- это все один товар).
Покупали все по списку, выдавали. Составляли отчет по тому, что выдали, а что не смогли закупить.
Как получилось автоматизировать: общая программа с единым списком номенклатуры. Каждый руководитель раз в месяц создает документ на закупку канцтоваров для своего отдела. Менеджер по закупкам нажимает одну кнопку и ей формируется итоговый отчет товаров, которые надо закупить. Также по кнопке формируется план-фактный отчет, который показывает разницу между запланированными требованиями отделов и фактически купленными канцтоварами.
По сути, вся её работа, которую она выполняла 2 недели в каждом месяце, сводилась к нажатию двух кнопок в новой программе. Она очень долго меня благодарила и разрешила набрать все, что мне нравится в огромной куче канцтоваров, что были в кабинете.
Врать не буду, её могли и сократить такой автоматизации её работы, но это была гос компания, скорее всего, просто навесили другой работы.
А я же понял, что цель автоматизации не только помочь организации сократить расходы, но и помощь людям в их ежедневной работе.
Тут не понятно как считать
Работа, тишина. голос нашего бухгалтера (Б) (в кабинете сидим вместе, руководитель (Р), менеджер, офис менеджер и пару программистов)
— (Б) «Представляете, оказывается сегодня тот день, если ваш возраст прибавить к году рождения, то получится текущий год»
— (Р) «Ну так это логично»
— (Б) «Нет, такое возможно только раз в 2 000 лет»
После (Б) несколько раз проверила на калькуляторе и убедилась, что это действительно логично
Рад стараться!
Ответ assselll в «Разговор в бухгалтерии»
-Тебя Оксана, с бухгалтерии, хотела!
-Я её уже удовлетворил.
Ответ на пост «Разговор в бухгалтерии»
Банковское:
— Выйди из клиента.
— Войди в клиента.
Разговор в бухгалтерии
— Вы уже банк разнесли?
— Еще не успели, только подрядчиков забили, да последних контрагентов добили.
Случаи из практики 105
— У моей девушки очень своеобразное чувство юмора, — с унылым видом произнес клиент. – Причем я подобрал самое литературное слово для описания того бреда что она делает.
— Это сильно мешает вашим отношениям?
— Ну, как сказать? Вроде бы да, а вроде и нет — просто нам очень весело вместе, но когда дело доходит до всего что находится вокруг, то тут все становится все хуже и хуже.
— Расскажите поподробнее, пожалуйста.
— Подробнее? Я попробую… Взять что ли ее прошлогоднюю выходку: едем мы к моей матери в гости, я за рулем, полсалона занимают стройматериалы, а Лена сидит сзади, на пассажирском сидении. Светофор загорается красным, я останавливаюсь, а рядом, на соседней полосе стоит полицейский экипаж. Тут моя умница, чуть-чуть приоткрывает окно и, высунув руки наружу, начинает кричать что ее похитили и хотят изнасиловать. Мужики среагировали мгновенно – похватали пушки, выскочили из машины, один взял меня на прицел, а второй оббежал сзади и выволок наружу. Словно попал в ГТА, только на месте того чувака, которого выкидывают из машины – оказался я.
— Чем закончился этот инцидент?
— Ну, полицейские не оценили юмора и нам пришлось очень долго объяснять их старшему что это была всего лишь шутка. На нас хотели написать протокол и привлечь за мелкое хулиганство – кое-как сумели уговорить не возбуждать дело. В общем, нажили проблем по самое не хочу! Но и смеялись до упада, когда смотрели снятое Леной видео с моим растерянным лицом.
— И часто она выкидывает такие шутки?
— Очень, но до полиции дело обычно не доходит – все один или два раза. Правда и этого оказалось достаточно чтобы мы попали в «черный список» нашего участкового. Теперь если на районе случается какая-то фигня, то он первым делом звонит нам…
— Вы пытались как-то образумить ее?
— Пытался, но она спрашивает: «Тебе же было весело? Ну так если да, то чего ты паришься?» Мне и в самом деле хорошо с ней: умная, красивая, зарабатывает в полтора раза больше, любит меня и поддерживает во всех ситуациях. И даже если накосячит, то никогда не скидывает вину на кого-то другого.
— Вы переживаете что она рано или поздно наживет вам обоим большие проблемы?
— Ну а как тут не беспокоиться? Недавно она решила напугать девчонок из бухгалтерии, устроив в курилке мини пожар. Началась паника, народ начал метаться туда-сюда, босс вообще первым выскочил на улицу и побежал отгонять свою ауди. И тут Лена, как настоящий герой, выходит в коридор с огнетушителем и без проблем тушит пламя. Коллеги чуть ли не на руках ее носили и крайне недобрым словом поминали того, кто все это устроил. Она потом ухахатывалась, когда рассказывала, что завхоз ее чуть не застукал с зажигалкой в руке. Я попытался объяснить ей что так себя вести крайне безответственно – кто-нибудь мог пострадать во время давки или огонь стал бы больше, и она не сумела его потушить.
— Вы правы: такое поведение опасно и для себя, и для окружающих. Нужно принимать меры.
— Вот я и решился привести ее к вам, — просиял мужчина. – А то мне кажется, что ее пранки скоро выйдут из-под контроля.
— Думаете она придет на сеанс?
— Если не захочет добровольно, то я знаю, как решить дело по-другому, — мрачным голосом ответил он. – Раз уж ей не хватает остроты ощущений, то я ей их обеспечу. У меня в органах есть старый друг — я отдам ему все видео с ее приколами и попрошу разобраться. Как только у нее начнутся серьезные проблемы с законом, она сразу же станет сговорчивей.
— Вы же понимаете, что будет если она узнает кто за этим стоит?
— Это не важно – сейчас главное сделать так, чтобы она не угробила себя или кого-нибудь еще…
Мой опыт работы в «нефтегазовой отрасли» (8)
Лето закончилось, прошло еще пару месяцев на голом окладе, и вдруг работа на нас действительно нахлынула. Руководству, видимо, удалось договориться с национальным достоянием. Началось всё с писем. Письма наружу с предложением и полным описанием наших услуг и их стоимостью. Если раньше в день было одно-два, и-то не каждый день, то теперь вдруг их число стало доходить до 20 в день! Это когда не успеваешь сверстать и подготовить одно – надо бежать за данными для другого и так целый день. Мы чувствовали, что процесс пошел, шестеренки закрутились. В один из таких перегруженных дней я даже заработал первую похвалу от начальницы. Когда она узнала, что несколько писем, которые она только собиралась озвучить были уже готовы, она сказала:
— Ну, ты это, прям – электровеник! – сказала она мне лично. Больше слов похвалы до самого конца своей работы там я от неё не услышал.
Вообще, все пособия и рекомендации для управленцев говорят о том, что хвалить подчиненных надо «перед строем» (так, чтобы весь коллектив слышал), а ругать наедине. У нас было диаметрально наоборот. Электровеником меня назвали в личной беседе, как бы в полу-шутку невзначай, а вот ругали моего коллегу всегда так, чтобы я это слышал.
Мой коллега стремительно терял позиции в свете последних событий. Робкий зашуганный паренек А, выполнявший механическую работу, регулярно бегал курить и иногда приходил с перегаром. Объем его работы не изменился от того, что заказов стало больше. Он так же вносил свои данные в 1С. Начала меняться реакция начальницы на него. Она начинала цеплять его по любой мелочи, даже самой незначительной. Применяла такой едкий, как сейчас сказали бы: «токсичный» издевательски-покровительственный тон общения. Начала вставлять мат. Блякать. Но тогда нам обоим это не казалось угрозой, потому что мы находились в положении: «Вот-вот всё наладится, там посмотрим».
Начали приходить авансы от заказчика и на эти поступления стали гасить задолженность по зарплате. Принесли расчетные листки. Забавно было получить расчетный листок за июнь в ноябре и наблюдать, как в нем выплаты зарплаты разбиты на 6 частей и стоят с июня по октябрь. По факту это ведь документально зафиксированное, с подписью главбуха, нарушение ТК РФ. Но все были рады, что кризис миновал и теперь заживем!
Разворот привычной жизни не заставил себя ждать – нам согласовали поиск двух человек в наш отдел и назначили начальника финансового отдела. То есть, с Р эти полномочия снимаются, она будет только начальницей планового. Она оживилась и стала штудировать HH.ru. Говорила так:
— Будем искать только с опытом и желательно с таким-же, как у нас или подобным. Учить работать я никого не хочу.
Мне сразу представились такие профи в пиджачках, у которых вся экономическая теория отлетает от зубов и на фоне которых мы с коллегой, действительно, проигрываем. Но потом я вспомнил об уровне зарплат в нашей конторе и успокоился – суперпрофессионалы на такое не пойдут, можно расслабиться. В реальности всё оказалось еще смешнее.
Собеседования. Решили сначала попробовать кого-то из знакомых, чтобы не срабатываться с людьми с улицы. Проштудировали всех и оказалось, что моя дальняя родственница подходит по всем параметрам и готова выйти и поработать. Я подумал, что этот вариант будет отличным на случай какого-то конфликта на моей стороне всегда будет еще один человек. Но, признаться честно, не особо подумал тогда, во что я втягиваю своего родственника…
Работала она до этого вольным бухгалтером, обсчитывала несколько контор или ИП-шников по фрилансу, скажем так. И жила на это, без постоянного места работы. Муж, сын, несколько машин – на жизнь хватало, но решила попробовать поработать на постоянку. Пришла к нам, побеседовала с Р, впечатление положительное, я ей всё показал, уже были уверены, что всё будет в порядке. Как вдруг, решила вмешаться главбухша! Оказывается, она в этот день была на месте, заняться ей, судя по всему, было особо нечем, и она решила лично провести еще одно собеседование с кандидатом. Причем, провести его в стресс-формате!
Начала она с агрессивного тона сразу, задавала вопросы типа: «А что вы будете делать, если ваш начальник отдела будет вступать с вами в конфликт? А куда вы пойдете, если станете свидетелем того, как кто-то из коллег что-то украл?». А в конце собеседования, после нескольких вопросов по бухгалтерской части (человеку, который претендует на должность экономиста) она выдала, что ваш кандидат – полный ноль в бухгалтерии и экономике предприятия! А кандидат, напомню, на протяжении 7 лет до этого обсчитывала несколько контор. В итоге с этого собеседования родственница вышла с круглыми глазами и отказом в грубой форме. Мне осталось только проводить её до метро. Единственное, что она мне сказала напоследок: «Ваш главбух – страшный человек! Беги отсюда как можно быстрее!».
Наверное, как стало понятно со временем, этим собеседованием главбухша дала начальнице моего отдела мощный подзатыльник, давая понять, чтобы не было за её спиной никакого самоуправства в выборе кандидатов. И резюме всех, кого найдем в интернете, чтобы сначала распечатывали и тащили ей на согласование, без попыток протащить знакомых. Родственница просто стала разменной монетой в этом переделе сфер влияния.
Теперь, зная этот горький опыт, я сам не сильно удивляюсь, когда сталкиваюсь с каким-то похожим неадекватом на собеседованиях. Ты же не знаешь, какие там подводные течения в компании, может похожий передел, и один начальник заворачивает кандидатуры, подобранные другим, специально из вредности, чтобы своё влияние показать.
Мой опыт работы в «нефтегазовой отрасли» (2)
В общем, в тот раз главбухша меня пощадила. Этот человек вообще заслуживает отдельного развернутого рассказа. До меня потом дошло, что мы пересеклись с ней всё-таки один раз чуть раньше этого злосчастного звонка. Я стоял в коридоре, решал по телефону свои дела, а она бежала мимо меня в женский туалет.
— МОЛОДОЙ ЧЕЛОВЕК, ЗДОРОВАТЬСЯ, ЧТО, НЕ УЧИЛИ? – прокричала она мне и пронеслась мимо.
Так я понял, что это какое-то начальство, но знакомы мы не были. Очень крупное, мешковатое телосложение, крупные, мужские черты лица. Возраст сложно сходу определить, злобные горящие глаза, волосы собраны в жидкий хвост, телесного цвета, с огромными залысинами. Всегда взвинченный тон общения, упомянутый в прошлом посте мерзкий ультразвук, если смех, то нарочито громкий. Ну и, как насмешка над всем этим набором, витиеватая фамилия. Она была из разряда тех людей, которые не знают покоя. Которые всегда на взводе. И им нужно, чтобы на взводе были все окружающие. Без этого у них не запускается механизм рабочего процесса. А уж какой барыней она бороздила владения! С каким надменным презрением смотрела на "челядь". Теперь я знаю, как выглядели те самые столбовые дворянки, которые, не моргнув глазом, могли вспороть живот крепостному, чтобы ножки погреть.
Я люблю почитать всегда отзывы сотрудников о компаниях. Там очень много интересного, всем советую. Так вот, сейчас отзывы об этой компании состоят на 70% из позитивной заказухи (об этом ниже) а на 30% из негатива, направленного именно в сторону главного бухгалтера. Как там её только не называют! И «ручной бульдог» и «стерва» и всё на свете. Пишут, что ей давно пора бы уже сходить в церковь и исповедаться во всех своих грехах.
По поводу заказухи на сайтах отзывов – очень забавно. Кадровая служба, наряду с бухгалтерией подчиняется главному бухгалтеру. Вообще, главбух здесь является вторым лицом в компании, наряду с главным инженером. Проводит у всех, даже у технарей и самых низших сотрудников, собеседования. Но мне почему-то повезло, у меня не проводила. И вот периодически, когда негативные отзывы начинают преобладать на сайтах типа: «Правда сотрудников» или «О работе», она, судя по всему, даёт распоряжение и сотрудники кадровой службы устраивают набеги на эти сайты. То, что это явный, спланированный набег – становится сразу видно по нескольким причинам.
Во-первых, текст почти всегда как под копирку. Одинаковый. О том, что работать очень хорошо и всегда компания поощряет тех, кто пришел сюда именно работать, а не баклуши бить. Есть премии, офис чистый и уютный, приятные коллеги. Но кому уж точно тут не место, так это лентяям! Негативные отзывы пишут обиженные на жизнь лентяи! А по факту, работа хорошая, из минусов – отсутствие ДМС.
И каждый пишет это в минусах, потому что на таких сайтах «минусы» — это отдельная графа.
Во-вторых, положительные отзывы всегда появляются пачками. По несколько штук в день, потом на месяцы – молчание. Или подряд несколько дней пишут только положительное. В общем такая динамика явно дает всё это понять. Негативные появляются разрозненно. Периодичность и стиль повествования явно свидетельствуют о том, что писали разные люди и автономно друг от друга, выражая свои неподдельные эмоции. Но когда негативных становится чуть больше двух – начинается набег!
В-третьих, те, кто писал положительные отзывы, всегда представлялись знакомыми мне инициалами. Или искаженными именами, но все равно тем, кто работает внутри компании все эти сотрудники известны и их легко можно узнать. Я так понимаю, что это нарочно делалось еще и для того, чтобы отчитаться перед главбухом. Что вот Коля. Коля написал отзыв как просили, премию в этом месяце получит.
Ну и в-четвертых, ну не пишут столько позитивных отзывов все подряд сотрудники! Это не райское место и не работа мечты, чтобы так радоваться и радость эту выражать. Самый лучший показатель для любой конторы – то, что отзывов о ней на этих сайтах нет, или их мало! Но когда толпа народу пишет, как тут хорошо – тухловатый запах бьет в нос сразу. Отзывы люди пишут, когда произошло что-то вопиющее, несправедливое, с ними нехорошо пуступил работодатель, обманул. Когда всё нормально – все молча работают. У них не возникает даже мысли заходить на сайты отзывов и мониторить их, не то, чтобы писать.
Ситуация, которая заставляет злорадно улыбаться меня до сих пор. У главбухши был зам, женщина предпенсионного возраста. Такая вобла сушеная, худая, агрессивная. Залетала в кабинеты и требовала. Казалось, что она ничего не умеет больше, кроме как требовать. Тоном общается только повелевающе-взвинченным. Тоном завуча младших классов в школе, короче ужас. С Главным бухгалтером – не разлей вода.
И вот случается очередной набег на сайты отзывов. Один отзыв подписан инициалами замши. Тематика – такая же, как указано выше. Как хорошо работать, только жалко, что ДМС нет. Я это замечаю сразу. Но, проходит меньше недели и замша вылетает из компании пинком под зад в один день без отработки, отступных и чего-либо ещё. За то, что как-то нагрубила главбуху. Не знаю, что у этих закадычных подруг там произошло. Но таким образом далеко не последний человек в компании в предпенсионном возрасте за один день стал безработным. Сидит теперь дома, отзыв свой об этой конторе перечитывает и льёт, наверное, свои вобловские слёзы.