Сообщество - MS, Libreoffice & Google docs

MS, Libreoffice & Google docs

761 пост 14 950 подписчиков

Популярные теги в сообществе:

19

Лайфхак для Microsoft Word

Ситуация когда случайно на печать отправляется не тот документ большого объема . Инструкции, шаблоны или еще что используемое в рутинной работе.
В условиях организации и обычными средствами предотвратить такие ситуации не вышло.
НО! Можно добавить примечания к документам, которые не должны печататься ни в коем случае. Тогда при печати или сохранении будет выскакивать такого типа окошко, мне было такой системы защиты в избытке:

Лайфхак для Microsoft Word Лайфхак, Microsoft Word
8

Конструктор финансовых моделей

Приветствую всех! Если кто решил провести выходные в обнимку с финансовым моделированием и экселем, то вот вам пост в сочувствие.

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Архитектура

Идеология: Конструктор нацелен на максимальную свободу построения и расчета модели, подобно MS Excel. В дополнение к возможностям Excel здесь реализована возможность интеллектуальной настройки расчета элементов модели.

Интеграм – низкоуровневый конструктор баз данных и веб-приложений, на котором сконфигурирован данный прикладной конструктор моделей, все настройки и данные хранятся в таблицах Интеграма

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

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

Служебные запросы собирают данные по модели и основным исходным данным.

Пользовательские запросы собирают дополнительные исходные данные, выдавая их в формате, понятном модели.

Расчетные группы – основной элемент построения модели, из которого строятся её таблицы: строки и колонки. Расчетная группа задает правило формирования колонок таблиц.

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

Термины:

  • Старт – дата начала для расчета модели

  • Финиш – дата окончания расчета

  • Период – регулярность расчета показателей модели/листа/таблицы

  • Единица измерения – задается на уровне строки или значения

Общие сведения

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Модель хранится в виде настроек в таблицах Интеграма.

Конструктор финансовых моделей Гайд, Программа, Длиннопост

На листе может быть несколько панелей, каждая из которых – это таблица с заданным строками:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

У модели есть кнопка «ФМ», которая запускает расчет этой модели, в таблице моделей:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

И на форме редактирования модели:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Строки таблиц модели

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Адресация данных

Здесь возможно следующее:

1. Сослаться на одноименное значение в таблице исходных данных

2. Сослаться на произвольное значение в таблице исходных данных

3. Записать формулу для вычисления из других строк

4. Жестко задать значение

5. Сделать ссылку на справочное значение

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

Все эти данные попадут на лист модели, когда мы её откроем:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Исходные данные

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

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

Первая колонка запроса – это дата актуальности значения, и модель разнесет все эти значения по соответствующим календарным срезам, просуммировав значения, если их несколько за период.

Повторяющиеся расчетные группы (РГ)

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Повторяющаяся группа (простая)

Группа (RG) Repeating group повторяется столько раз, сколько периодов расчета укладывается в указанный для модели диапазон расчета. Период расчета (неделя, месяц, квартал, год) задаются на уровне самой модели, а также могут быть указаны для любой её панели:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

В этой панели в колонке RG мы видим 2 повторяющиеся группы, одна из которых – это простая группа:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

В первой колонке (N) указан порядковый номер группы на панели – так их увидит пользователь, а во второй колонке (RG) указан номер по порядку создания группы.

Для заданного периода (Год) в диапазоне модели (01.01.2025 – 31.12.2030) будет выведено 6 повторений группы, по одному на каждый год:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Группа Единицы измерения

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Группа значений

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

Например, такая комбинация строк панели с её повторяющимися группами

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Приведет к такому результату при расчете модели – см. Колонку Значение:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Произвольная группа

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

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

В строках панели при этом указывается список видов продукции:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

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

Конструктор финансовых моделей Гайд, Программа, Длиннопост

В результате, в модели мы увидим требуемую межотраслевую матрицу с этими значениями:

Конструктор финансовых моделей Гайд, Программа, Длиннопост

Пользовательские запросы

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

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

Здесь начинается более продвинутая тема, и мы рассмотрим её в следующей статье. Спасибо, если кто вдруг досюда дочитал предыдущие 10 килосимволов.

Показать полностью 21
30

Быстрое выравнивание аномалий в ряду данных средствами Excel (линейная регрессия)

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

Рассмотрим пример данных за 2019–2025 годы:

Быстрое выравнивание аномалий в ряду данных средствами Excel (линейная регрессия) Аналитика, Microsoft Excel, Регрессия, Практика

Пример сведений с аномальными данными

Быстрое выравнивание аномалий в ряду данных средствами Excel (линейная регрессия) Аналитика, Microsoft Excel, Регрессия, Практика

Визуализация аномальных сведений

Очевидно, что в 2022–2024 гг. значения выглядят аномальными (в приложенном к посту файле Excel выглядит ещё более наглядно).

🔧 Что делаем

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

В Excel для этого используется функция ПРЕДСКАЗ.ЛИНЕЙН().

Так как «правильные» точки ряда не идут подряд (нам нужны 2019, 2020, 2021 и 2025), применяем ВЫБОР:

=ОКРУГЛ(ПРЕДСКАЗ.ЛИНЕЙН(2022;
ВЫБОР({1;2;3;4};B13;B14;B15;B19);
ВЫБОР({1;2;3;4};A13;A14;A15;A19));
2)

👉 Формулу вставляем для каждого нужного года (2022–2024).

📈 Результат

После корректировки ряд стал выглядеть так:

Быстрое выравнивание аномалий в ряду данных средствами Excel (линейная регрессия) Аналитика, Microsoft Excel, Регрессия, Практика

Расчёт регрессии и применение к ряду данных

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

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

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

Файл примера

Показать полностью 1
22

Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата)

После публикации первой части и полученного опыта, а также волны хейта я немного доработал свой онлайн-инструмент для сравнения двух Excel-файлов.

Сначала немного о том, почему я сделал этот инструмент. Я работаю инженером данных и многое уже автоматизировал в своей работе. Сейчас я занимаюсь переносом разных скриптов из старых офлайн систем в облако. Чтобы сравнивать таблицы, есть разные инструменты, но речь не об этом. В них всё просто — можно преобразовать любые форматы и сравнить. Но появилась задача сравнивать Excel, который получается после работы скрипта, и CSV-файл, выгруженный из Databricks. У кого-то это могут быть также две таблицы из разных систем.

Есть несколько вариантов, как это сделать:

  • Для продвинутых хейтеров. Можно загрузить Excel в python через pandas и сравнить две таблицы, но там нужно правильно настраивать форматы, и это долго и не очень удобно. Ещё результат выводится в виде таблицы, и приходится самому искать отличия глазами.

  • Для тех, кто знает формулы в Excel и любит рутину. Можно открыть оба файла в Excel, привести даты к одному формату, прописать формулы для сравнения и так далее. Но это долго, и каждый раз для новых файлов нужно всё делать заново. Приходится создавать дополнительные таблицы с результатами.

В итоге я решил попробовать сделать сайт, который сравнивает файлы прямо в браузере, не загружая их никуда на сервер, а используя только память вашего компьютера. Мне встречались советы в прошлом посте сделать офлайн-инструмент — но, во-первых, в exe-файле может быть всё что угодно, и вы не всегда знаете, что именно он делает. А во-вторых, на работе часто запрещено устанавливать новое ПО.
У моего сайта нет сервера — весь код лежит в открытом GitHub, который подключён к домену.

Какие задачи сейчас решает мой инструмент:

  • Можно сравнить два Excel-файла или Excel с CSV.

  • Можно выбрать, какие листы (вкладки) сравнивать.

  • Все даты перед сравнением автоматически приводятся к одному формату.

  • Названия колонок приводятся к верхнему регистру, чтобы не было ошибок из-за разного регистра.

  • Порядок строк в файлах не важен — инструмент их сравнит правильно.

  • Колонки могут идти в разном порядке — это не проблема.

  • В конце показывается итоговая таблица с отличиями.

  • Есть подробная таблица с цветной подсветкой, где видно, в чём конкретно разница.

  • Можно исключать отдельные колонки из сравнения, чтобы проверить, именно ли в них проблема.

  • Теперь можно экспортировать (сохранить) итоговую таблицу с подсветкой различий.

Вот пример двух файлов, которые я сейчас сравню:

Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата) Microsoft Excel, Сравнение, Аналитика, Гайд, Длиннопост
Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата) Microsoft Excel, Сравнение, Аналитика, Гайд, Длиннопост

Как видно, даты там в разных форматах, а колонки — в разном порядке. Выбираем файлы, нажимаем «Сравнить» — и получаем результат:

Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата) Microsoft Excel, Сравнение, Аналитика, Гайд, Длиннопост
Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата) Microsoft Excel, Сравнение, Аналитика, Гайд, Длиннопост

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

Заранее спасибо за ваши советы и комментарии.

Инструмент для быстрой проверки отличий между файлами Excel (добавлен экспорт результата) Microsoft Excel, Сравнение, Аналитика, Гайд, Длиннопост
Показать полностью 5
221

Как сравнить два Excel-файла и не сойти с ума (сделал мини инструмент, теперь 30 секунд)

Недавно у меня возникла задача, с которой, наверное, сталкивался каждый, кто хоть раз работал с таблицами. Я выгрузил из разных систем два Excel-файла, а точнее один из них был в CSV формате, вроде бы должны были быть похожими, но не совсем. Нужно было понять сходятся ли они или есть расхождения. Звучит как что-то простое, но когда я начал разбираться, стало понятно — это не 5 минут работы, а, скорее всего ни один час.

Что я пробовал, и почему это не помогло

Иногда если в файле мало строк, можно было сделать и глазами, но не в этот раз.

Обычно если нужно сравнить всего-то один столбец, то отлично подходит ВПР (VLOOKUP), но тут необходимо было сверить все столбцы.

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

Решение: сделал простую штуку, чтобы не страдать больше

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

В первую очередь я делал этот инструмент для личных целей и пока он работает с небольшими файлами, т.к. их нужно загружать в оперативную память. Но может кому-то тоже окажется полезным - makspilot.com. Он очень простой: выбираешь два файла Excel или CSV, загружаешь их, нажимаешь «Сравнить» — и через секунду получаешь список всех отличий. Также можно исключить столбцы из сравнения.

Как сравнить два Excel-файла и не сойти с ума (сделал мини инструмент, теперь 30 секунд) Microsoft Excel, Open Source, Аналитика, Сравнение

Буду рад отзывам или пожеланиям.

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

Показать полностью 1
1

Ответ на пост «Учёт для тренера в Excel»2

У меня после перехода по ссылке на Гугл таблицу все открывается ,но через 10 сек вылетает ,подскажите как можно решить проблему ?

2

Оформление текста в Word, подобно стилизованным решениям Markdown

Народ, есть вопрос. Существует ли какой-то способ оформлять текст в Word, как в стилизованных инструментах. Что имеется ввиду:

Оформление текста в Word, подобно стилизованным решениям Markdown Microsoft Word, Оформление, Теги, Текст

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

Отличная работа, все прочитано!