🔷 "Инновационная" аналитика
Вы замечали, что сложность отчета - не есть результат.
Что эффектность и эффективность - не друзья.
Иногда вижу как пользователи из навороченного отчета PowerBI выковыривают данные в эксель и уже на основе этого принимают решения.
Это признак отчета, нуждающегося в срочной переработке.
Как не нужно:
- Собрать ВСЕ данные, которые только можно найти
- Создать десятки графиков и таблиц
- Написать длинный отчет с профессиональными терминами
- Отправить руководству и ждать реакции (которая часто не наступает)
Не делайте так, пожалуйста.
Отчет нужно давать в горячие, вспотевшие от нетерпения и желания действовать руки.
Часто, сделанная за пару часов табличка, нацеленная на решение конкретной задачи приносит больший результат, чем огромный биай проект.
Да - это сделано на коленке.
Да - сделано из того, что было под рукой.
Табличка даже может быть далеко не фотомоделью.
Важно не это.
Важно чтобы при открытии файла комната наполнялась легким ароматом скипидара.
Этот аромат бодрит и люди понимают что и для чего им делать.
А не вот это все "Высокая волатильность активности коммуникаций привела к отрицательным дивиациям от базового тренда развития, что заставляет в среднесрочном форекасте заложить тенденции отрицательного роста с соответствующей оптимизацией мотивационной составляющей ответственных".
Можно же проще - заглянуть в отдел продаж и сказать: "Мужики, увижу, что вы клиентам не звоните - премии не будет!"
Разница не в инструментах. Разница в подходе.
Как нужно:
- Сначала понять, какую проблему решаем
- Сосредоточиться только на ключевых данных
- Сделать простую и понятную визуализацию
- Завершить анализ конкретными рекомендациями к действию
- Проследить за внедрением и измерить результат
Ключевое отличие правильного подхода:
1. Фокус на действиях, а не на сборе данных
2. Простота, понятная всем участникам процесса
3. Концентрация на узких местах вместо анализа всего подряд
4. Измерение результатов внедрения, а не качества отчетов
Посмотрите честно на свои отчеты. Они приводят к конкретным действиям? Или просто собирают пыль в папках и на дисках?
Ваш следующий шаг: возьмите один из своих регулярных отчетов и спросите тех, кто его получает — какие решения они принимают на его основе? Если четкого ответа нет — пора менять подход.
А в каких ситуациях ваша аналитика реально изменила ход событий? Поделитесь в комментариях!
🔥 #роль_аналитика #практика_принятия_решений
Вы замечали, что сложность отчета - не есть результат.
Что эффектность и эффективность - не друзья.
Иногда вижу как пользователи из навороченного отчета PowerBI выковыривают данные в эксель и уже на основе этого принимают решения.
Это признак отчета, нуждающегося в срочной переработке.
Как не нужно:
- Собрать ВСЕ данные, которые только можно найти
- Создать десятки графиков и таблиц
- Написать длинный отчет с профессиональными терминами
- Отправить руководству и ждать реакции (которая часто не наступает)
Не делайте так, пожалуйста.
Отчет нужно давать в горячие, вспотевшие от нетерпения и желания действовать руки.
Часто, сделанная за пару часов табличка, нацеленная на решение конкретной задачи приносит больший результат, чем огромный биай проект.
Да - это сделано на коленке.
Да - сделано из того, что было под рукой.
Табличка даже может быть далеко не фотомоделью.
Важно не это.
Важно чтобы при открытии файла комната наполнялась легким ароматом скипидара.
Этот аромат бодрит и люди понимают что и для чего им делать.
А не вот это все "Высокая волатильность активности коммуникаций привела к отрицательным дивиациям от базового тренда развития, что заставляет в среднесрочном форекасте заложить тенденции отрицательного роста с соответствующей оптимизацией мотивационной составляющей ответственных".
Можно же проще - заглянуть в отдел продаж и сказать: "Мужики, увижу, что вы клиентам не звоните - премии не будет!"
Разница не в инструментах. Разница в подходе.
Как нужно:
- Сначала понять, какую проблему решаем
- Сосредоточиться только на ключевых данных
- Сделать простую и понятную визуализацию
- Завершить анализ конкретными рекомендациями к действию
- Проследить за внедрением и измерить результат
Ключевое отличие правильного подхода:
1. Фокус на действиях, а не на сборе данных
2. Простота, понятная всем участникам процесса
3. Концентрация на узких местах вместо анализа всего подряд
4. Измерение результатов внедрения, а не качества отчетов
Посмотрите честно на свои отчеты. Они приводят к конкретным действиям? Или просто собирают пыль в папках и на дисках?
Ваш следующий шаг: возьмите один из своих регулярных отчетов и спросите тех, кто его получает — какие решения они принимают на его основе? Если четкого ответа нет — пора менять подход.
А в каких ситуациях ваша аналитика реально изменила ход событий? Поделитесь в комментариях!
🔥 #роль_аналитика #практика_принятия_решений
👍9👏3🔥2
Помечтаем?
Не тем у нас компьютерное зрение занимается.
Поставил себе клавиатуру, которая по блютуз сразу к трем компам может подключаться.
Благо третий я не достаю и хватает RDP подключения)
На столе - красота. Лежит одна клавиатура и все остальное можно нужными вещами занять.
Жена эти вещи почему-то называет бардаком и ставит мне это на вид.
Но сейчас не об этом...
Так вот. Все вроде бы хорошо, но есть один нюанс.
Для переключения клавиатуры между компами нужно жать сочетание клавиш Fn+1 и Fn+2.
Конечно я забываю нажать на эти кнопки, вот иногда и случается, что в телеге человек случайно получает сообщение вида:
ыудусе * ещз 1000 акщь вищюыфдуы
В итоге человек обескуражен, я расстроен - плохо всем.
Вот почему не сделать так чтобы у клавиатуры была программа, которая сама бы нажимала Fn+1, Fn+2 или Fn+3.
Ради такого дела - я даже разрешу программе на меня смотреть.
Пусть знает куда я сейчас смотрю и на какой комп нужно переключиться.
А если такую штуку и с мышкой получится провернуть - то и вовсе спасено человечество!
А вам какие штуки хотелось бы улучшить?
Не тем у нас компьютерное зрение занимается.
Поставил себе клавиатуру, которая по блютуз сразу к трем компам может подключаться.
Благо третий я не достаю и хватает RDP подключения)
На столе - красота. Лежит одна клавиатура и все остальное можно нужными вещами занять.
Но сейчас не об этом...
Так вот. Все вроде бы хорошо, но есть один нюанс.
Для переключения клавиатуры между компами нужно жать сочетание клавиш Fn+1 и Fn+2.
Конечно я забываю нажать на эти кнопки, вот иногда и случается, что в телеге человек случайно получает сообщение вида:
ыудусе * ещз 1000 акщь вищюыфдуы
В итоге человек обескуражен, я расстроен - плохо всем.
Вот почему не сделать так чтобы у клавиатуры была программа, которая сама бы нажимала Fn+1, Fn+2 или Fn+3.
Ради такого дела - я даже разрешу программе на меня смотреть.
Пусть знает куда я сейчас смотрю и на какой комп нужно переключиться.
А если такую штуку и с мышкой получится провернуть - то и вовсе спасено человечество!
А вам какие штуки хотелось бы улучшить?
👍9🔥4
Ахах...
А еще - деградация поисковиков.
Мы перестали кормить гуглы и яндексы нашими реакциями (все смотрим в иишках) и классические поисковики не знают какая выдача будет релевантной запросу)))
ChatGPT уже настолько загрязнил Интернет, что это тормозит будущее развитие ИИ / Хабр https://share.google/ntIIL2okPq0RDrIFH
А еще - деградация поисковиков.
Мы перестали кормить гуглы и яндексы нашими реакциями (все смотрим в иишках) и классические поисковики не знают какая выдача будет релевантной запросу)))
ChatGPT уже настолько загрязнил Интернет, что это тормозит будущее развитие ИИ / Хабр https://share.google/ntIIL2okPq0RDrIFH
Хабр
ChatGPT уже настолько загрязнил Интернет, что это тормозит будущее развитие ИИ
Стремительный рост ChatGPT и целая плеяда последовавших генеративных моделей конкурентов уже загрязнили интернет таким количеством ненужного хлама, что это тормозит развитие будущих моделей...
👍12
Друзья, очень важно ваше мнение.
Все ли в порядке с кукухой, или пора к Курпатову?
Вот если вы весь день вайб-кодите с ИИшкой и в конце дня перед отходом ко сну просите ИИшку сделать саммари сегодняшнего дня в виде стендапа с заходами, панчами и добивками.
А потом читаете это и ржете, как конь.
Нормально ли это?
Все ли в порядке с кукухой, или пора к Курпатову?
Вот если вы весь день вайб-кодите с ИИшкой и в конце дня перед отходом ко сну просите ИИшку сделать саммари сегодняшнего дня в виде стендапа с заходами, панчами и добивками.
А потом читаете это и ржете, как конь.
Нормально ли это?
😁15🔥2
Изящная деградация
или graceful degradation на пиндостанском.
Это - офигенная штука.
Graceful degradation (дословно — «изящная деградация») — подход к разработке, при котором система продолжает выполнять свои основные функции, даже если отдельные её элементы вышли из строя. Это понятие может использоваться в разных контекстах: в инженерии, веб-разработке и сетевых технологиях.
Зачем это нам - крутым аналитикам?
Поясню.
Вот сделали вы крутой отчет с раздачей прав по записям.
Это когда база данных из которой отчет берет данные сама понимает имя пользователя и автоматически фильтрует массив данных.
Выдает пользователю только то, что ему положено.
Менеджеру Васе - только его продажи.
Супервайзеру Пете - продажи его подчиненных.
И так далее.
И вот представим себе ситуацию, когда появляется новый сотрудник, а у него ни записи в базе, ни данных в отчете.
Открывает он отчет, а тот ломается: выдает ошибки при обновлении, да еще и матюки исторгает.
Сотрудник в шоке - куда бежать и что делать не в курсе.
Отсюда: стресс, подавленная агрессия, алкоголизм, потеря для общества.
Как этого избежать?
Вот тут то и помогает подход с изящной деградацией.
Нужно извернуться и сделать так чтобы в отчет, даже если данных легитимных нет, выдавалась хоть одна строка.
А в этой строке было написано в самом видном текстовом поле, например с наименованием клиента:
"Вы не зарегистрированы в базе - позвоните Паше по номеру ххх или сделайте заявку там-то и там-то".
В итоге получаем живой отчет и спасенную психику сотрудника.
Аналогично и с моментами, когда данные для отчета не успели свариться.
Прямо в аварийный датасет можно закидывать информацию о текущем статусе пакета данных и ориентировочном времени их готовности.
Всем эксель!
или graceful degradation на пиндостанском.
Это - офигенная штука.
Graceful degradation (дословно — «изящная деградация») — подход к разработке, при котором система продолжает выполнять свои основные функции, даже если отдельные её элементы вышли из строя. Это понятие может использоваться в разных контекстах: в инженерии, веб-разработке и сетевых технологиях.
Зачем это нам - крутым аналитикам?
Поясню.
Вот сделали вы крутой отчет с раздачей прав по записям.
Это когда база данных из которой отчет берет данные сама понимает имя пользователя и автоматически фильтрует массив данных.
Выдает пользователю только то, что ему положено.
Менеджеру Васе - только его продажи.
Супервайзеру Пете - продажи его подчиненных.
И так далее.
И вот представим себе ситуацию, когда появляется новый сотрудник, а у него ни записи в базе, ни данных в отчете.
Открывает он отчет, а тот ломается: выдает ошибки при обновлении, да еще и матюки исторгает.
Сотрудник в шоке - куда бежать и что делать не в курсе.
Отсюда: стресс, подавленная агрессия, алкоголизм, потеря для общества.
Как этого избежать?
Вот тут то и помогает подход с изящной деградацией.
Нужно извернуться и сделать так чтобы в отчет, даже если данных легитимных нет, выдавалась хоть одна строка.
А в этой строке было написано в самом видном текстовом поле, например с наименованием клиента:
"Вы не зарегистрированы в базе - позвоните Паше по номеру ххх или сделайте заявку там-то и там-то".
В итоге получаем живой отчет и спасенную психику сотрудника.
Аналогично и с моментами, когда данные для отчета не успели свариться.
Прямо в аварийный датасет можно закидывать информацию о текущем статусе пакета данных и ориентировочном времени их готовности.
Всем эксель!
👍7👏1
Сегодня нашел как клево можно отрабатывать null в Power Query.
Делюсь.
Многие уже привыкли в ms sql к конструкции
ISNULL(Значение, Значение вместо null)
Ну или к варианту с COALESCE для примерно всех sql синтаксисов.
Вот и я очень привык к синтаксическому сахару и было больно городить в Power Query условия вида:
if Значение is null
then Значение вместо null
else Значение
Но оказалось, что жизнь гораздо прекрасней, чем может казаться на первый взгляд.
Power Query вполне умеет заменять null на другое значение при помощи вот такой конструкции:
Значение ?? Значение вместо null
Два знака вопроса, а сколько радости))
Всем Эксель!
Делюсь.
Многие уже привыкли в ms sql к конструкции
ISNULL(Значение, Значение вместо null)
Ну или к варианту с COALESCE для примерно всех sql синтаксисов.
Вот и я очень привык к синтаксическому сахару и было больно городить в Power Query условия вида:
if Значение is null
then Значение вместо null
else Значение
Но оказалось, что жизнь гораздо прекрасней, чем может казаться на первый взгляд.
Power Query вполне умеет заменять null на другое значение при помощи вот такой конструкции:
Значение ?? Значение вместо null
Два знака вопроса, а сколько радости))
Всем Эксель!
👍10❤2
А много ли у нас народу имеет отношение к маркетплейсам?
Anonymous Poll
27%
Я селлер
16%
Я менеджер маркетплейсов
14%
У меня друзья селлеры и я им помогаю с эксельками
3%
Я работаю в маркетплейсе
41%
В гробу я видел эти ваши маркетплейсы
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Excel, велосипед и вейк хороши тем, что если один раз научился - то это с тобой навсегда!)
Пять лет доска ждала своего часа!)))
Пять лет доска ждала своего часа!)))
👍13🔥7👎1
#хозяйке_на_заметку
Как реализовать привычные в SQL функции isnull и coalesce в power query.
В ситуациях, когда мы хотим заменить null на какое-то определенное значение (например на "Пусто") может помочь обычный мышкоклац.
Но когда вместо null мы хотим подставлять значение другого поля - то тут начинаются танцы.
Можно конечно вставить условный столбец, но это добавит лишних шагов... Удаления и прочую белиберду...
Но! Оказывается можно поступить гораздо проще.
В расширенном редакторе нужно просто добавить шаг:
Сохраняйте, пересылайте себе чтобы не потерять.
Как реализовать привычные в SQL функции isnull и coalesce в power query.
В ситуациях, когда мы хотим заменить null на какое-то определенное значение (например на "Пусто") может помочь обычный мышкоклац.
Но когда вместо null мы хотим подставлять значение другого поля - то тут начинаются танцы.
Можно конечно вставить условный столбец, но это добавит лишних шагов... Удаления и прочую белиберду...
Но! Оказывается можно поступить гораздо проще.
В расширенном редакторе нужно просто добавить шаг:
#"isnull поле для замены" = Table.ReplaceValue(
Источник (предыдущий шаг),
null,
each [Поле значение из которого вставляем],
Replacer.ReplaceValue,
{"поле для замены"}
)
Сохраняйте, пересылайте себе чтобы не потерять.
👍10❤2🔥2
Забрать значение из именованной ячейки в power query.
Часто бывает нужно передать параметр из произвольной ячейки листа Excel в Power Query.
Нет ничего проще!
Просто задаете ячейке имя (Например: "ЯЧЕЙКА").
В Power Query достучаться до нее можно так:
Как это работает?
Представьте, что это адрес для нахождения человека в офисе:
Excel.CurrentWorkbook() = "Найди мне главный каталог всего здания"
{[Name="ЯЧЕЙКА"]} = "В каталоге найди отдел под номером 'ЯЧЕЙКА'"
[Content] = "Загляни в комнату этого отдела и принеси мне всю папку с рабочими документами"
{0} = "Открой папку и достань самый верхний лист бумаги (первый по порядку)"
[Column1] = "Найди на этом листе поле с заголовком 'Column1' и прочитай, что в нем написано"
Часто бывает нужно передать параметр из произвольной ячейки листа Excel в Power Query.
Нет ничего проще!
Просто задаете ячейке имя (Например: "ЯЧЕЙКА").
В Power Query достучаться до нее можно так:
Excel.CurrentWorkbook(){[Name="ЯЧЕЙКА"]}[Content]{0}[Column1]Как это работает?
Представьте, что это адрес для нахождения человека в офисе:
Excel.CurrentWorkbook() = "Найди мне главный каталог всего здания"
{[Name="ЯЧЕЙКА"]} = "В каталоге найди отдел под номером 'ЯЧЕЙКА'"
[Content] = "Загляни в комнату этого отдела и принеси мне всю папку с рабочими документами"
{0} = "Открой папку и достань самый верхний лист бумаги (первый по порядку)"
[Column1] = "Найди на этом листе поле с заголовком 'Column1' и прочитай, что в нем написано"
👍11
🔥 Лайфхак дня: как вставлять дату и время в Excel молниеносно
Сегодня понадобилось срочно сделать себе CRM-систему в Excel. Решил не усложнять — делаю ведь для себя, зачем лишняя автоматизация?
Но сразу же столкнулся с рутиной: постоянная вставка даты и времени начала бесить с первого раза 😤
Пришлось вспомнить спасительные горячие клавиши. Делюсь, чтобы вы тоже не тратили время:
⏳ Для вставки текущей даты:
Ctrl + ; (Зажми Control и точку с запятой)
⏰ Для вставки текущего времени:
Ctrl + Shift + ; (Control + Shift + точка с запятой)
🗓⏰ Чтобы вставить дату и время вместе:
Сначала дата: Ctrl + ;
Ставим пробел
Затем время: Ctrl + Shift + ;
______
Добавка от Дмитрия из комментариев:
Если сочетания перестали работать, нужно закрыть Excel полностью, сменить раскладку (с русской на английскую или наоборот) и запустить программу. Произойдёт перерегистрация горячих клавиш, и сочетания должны заработать.
Дмитрию - отдельный Гранд Мерси!
Сегодня понадобилось срочно сделать себе CRM-систему в Excel. Решил не усложнять — делаю ведь для себя, зачем лишняя автоматизация?
Но сразу же столкнулся с рутиной: постоянная вставка даты и времени начала бесить с первого раза 😤
Пришлось вспомнить спасительные горячие клавиши. Делюсь, чтобы вы тоже не тратили время:
⏳ Для вставки текущей даты:
Ctrl + ; (Зажми Control и точку с запятой)
⏰ Для вставки текущего времени:
Ctrl + Shift + ; (Control + Shift + точка с запятой)
🗓⏰ Чтобы вставить дату и время вместе:
Сначала дата: Ctrl + ;
Ставим пробел
Затем время: Ctrl + Shift + ;
______
Добавка от Дмитрия из комментариев:
Если сочетания перестали работать, нужно закрыть Excel полностью, сменить раскладку (с русской на английскую или наоборот) и запустить программу. Произойдёт перерегистрация горячих клавиш, и сочетания должны заработать.
Дмитрию - отдельный Гранд Мерси!
👍21🙏3❤1
Памятка по включению макросов
——————————————————————————-
1️⃣ Разблокировка файла
При скачивании Windows может заблокировать файл:
🔸 Правой кнопкой по файлу → Свойства
🔸 Внизу найди "Разблокировать" → поставь галочку
🔸 Нажми ОК
2️⃣ Включение макросов и содержимого
При открытии Excel покажет желтую полоску сверху:
🔸 Нажми "Включить содержимое"
🔸 Если спросит про макросы → "Включить макросы"
🔸 Если появилось окно безопасности → "Да, доверяю"
---
⚙️ Настройка безопасности Excel (один раз)
Если постоянно просит включать макросы:
1️⃣ Файл → Параметры → Центр управления безопасностью
2️⃣ Параметры центра управления безопасностью
3️⃣ Параметры макросов → выбери:
- ✅ "Включить все макросы" (самый простой)
- ИЛИ "Отключить все макросы с уведомлением"
4️⃣ Нажми ОК и перезапусти Excel
——————————————————————————-
1️⃣ Разблокировка файла
При скачивании Windows может заблокировать файл:
🔸 Правой кнопкой по файлу → Свойства
🔸 Внизу найди "Разблокировать" → поставь галочку
🔸 Нажми ОК
2️⃣ Включение макросов и содержимого
При открытии Excel покажет желтую полоску сверху:
🔸 Нажми "Включить содержимое"
🔸 Если спросит про макросы → "Включить макросы"
🔸 Если появилось окно безопасности → "Да, доверяю"
---
⚙️ Настройка безопасности Excel (один раз)
Если постоянно просит включать макросы:
1️⃣ Файл → Параметры → Центр управления безопасностью
2️⃣ Параметры центра управления безопасностью
3️⃣ Параметры макросов → выбери:
- ✅ "Включить все макросы" (самый простой)
- ИЛИ "Отключить все макросы с уведомлением"
4️⃣ Нажми ОК и перезапусти Excel
👍5
https://www.businessinsider.com/excel-most-in-demand-skill-tech-job-listings-ai-2025-8 - На фоне развития ИИ Microsoft Excel, по-прежнему является самым упоминаемым навыком в списках вакансий. 😊
Business Insider
Forget ChatGPT, Excel remains the most in-demand skill
AI isn't changing everything. Spreadsheet whizzes are still competitive in the current job market.
❤8
Держите мой первый подкаст.
Расскажите - как вам? 😊
https://vkvideo.ru/video-230335429_456239026?list=50c196e395256a4d42
https://youtu.be/x_K370CnkyA
Расскажите - как вам? 😊
https://vkvideo.ru/video-230335429_456239026?list=50c196e395256a4d42
https://youtu.be/x_K370CnkyA
👍16
🔍 Битовые маски: суперсила для работы с данными
Сегодня о битовых масках — мощном инструменте, который делает магию с данными.
🤔 Что это вообще такое?
Битовая маска — это число, в котором каждый бит имеет специальное значение. Представьте, что у вас есть швейцарский нож данных — каждая "лезвие" (бит) отвечает за свою функцию.
🎯 Где это реально используют?
✅ Системы прав доступа (можно/нельзя)
🏷 Множественные флаги состояний
🎮 Игровая разработка (статусы эффектов)
📊 Оптимизация хранения данных
🔐 Компактные настройки
💻 Практика в таблицах (Excel/Google Sheets)
Допустим, у нас число 6 (бинарно: 110). Как проверить отдельные биты?
excel
=ОСТАТ(A1;2) → Бит 0 (младший): 0
=ОСТАТ(ЧАСТНОЕ(A1;2);2) → Бит 1: 1
=ОСТАТ(ЧАСТНОЕ(A1;4);2) → Бит 2: 1
📚 Живой пример: система доступа
Пусть каждый бит — право доступа:
Бит 0 (1): Чтение
Бит 1 (2): Запись
Бит 2 (4): Удаление
Права пользователя = 5 (бинарно 101) = Чтение + Удаление
То есть это просто сумма состояний. Чтение 1 + Удаление 4 = Чтение, Удаление (5).
Проверяем права:
excel
=ЕСЛИ(ОСТАТ(Права;2)=1;"Чтение есть";"")
=ЕСЛИ(ОСТАТ(ЧАСТНОЕ(Права;2);2)=1;"Запись есть";"")
🎁 Преимущества:
⚡️ Супербыстро
💾 Экономия памяти
🔧 Гибкость
🧮 Простые вычисления
⚠️ Осторожно:
Может быть сложно для понимания
Легко запутаться в битах
Ограниченное количество флагов (обычно 32/64)
💡 Профи-совет: Обязательно используйте только степени двойки для каждого флага: 1, 2, 4, 8, 16, 32...
Попробуйте! Это как суперспособность для оптимизации. 🦸
Сегодня о битовых масках — мощном инструменте, который делает магию с данными.
🤔 Что это вообще такое?
Битовая маска — это число, в котором каждый бит имеет специальное значение. Представьте, что у вас есть швейцарский нож данных — каждая "лезвие" (бит) отвечает за свою функцию.
🎯 Где это реально используют?
✅ Системы прав доступа (можно/нельзя)
🏷 Множественные флаги состояний
🎮 Игровая разработка (статусы эффектов)
📊 Оптимизация хранения данных
🔐 Компактные настройки
💻 Практика в таблицах (Excel/Google Sheets)
Допустим, у нас число 6 (бинарно: 110). Как проверить отдельные биты?
excel
=ОСТАТ(A1;2) → Бит 0 (младший): 0
=ОСТАТ(ЧАСТНОЕ(A1;2);2) → Бит 1: 1
=ОСТАТ(ЧАСТНОЕ(A1;4);2) → Бит 2: 1
📚 Живой пример: система доступа
Пусть каждый бит — право доступа:
Бит 0 (1): Чтение
Бит 1 (2): Запись
Бит 2 (4): Удаление
Права пользователя = 5 (бинарно 101) = Чтение + Удаление
То есть это просто сумма состояний. Чтение 1 + Удаление 4 = Чтение, Удаление (5).
Проверяем права:
excel
=ЕСЛИ(ОСТАТ(Права;2)=1;"Чтение есть";"")
=ЕСЛИ(ОСТАТ(ЧАСТНОЕ(Права;2);2)=1;"Запись есть";"")
🎁 Преимущества:
⚡️ Супербыстро
💾 Экономия памяти
🔧 Гибкость
🧮 Простые вычисления
⚠️ Осторожно:
Может быть сложно для понимания
Легко запутаться в битах
Ограниченное количество флагов (обычно 32/64)
💡 Профи-совет: Обязательно используйте только степени двойки для каждого флага: 1, 2, 4, 8, 16, 32...
Попробуйте! Это как суперспособность для оптимизации. 🦸
🔥4🤯2
А теперь и для Power Query
Битовые маски в Power Query: преобразуем Excel-формулы
Базовые функции в M Language (Power Query)
1. Первый бит (младший бит, бит 0)
или
2. Второй бит (бит 1)
3. Третий бит (бит 2)
4. Четвертый бит (бит 3)
5. Пятый бит (бит 4)
Битовые маски в Power Query: преобразуем Excel-формулы
Базовые функции в M Language (Power Query)
1. Первый бит (младший бит, бит 0)
= Number.Mod([Number], 2)или
= Number.Mod(Number.IntegerDivide([Number], 1), 2)2. Второй бит (бит 1)
= Number.Mod(Number.IntegerDivide([Number], 2), 2)3. Третий бит (бит 2)
= Number.Mod(Number.IntegerDivide([Number], 4), 2)4. Четвертый бит (бит 3)
= Number.Mod(Number.IntegerDivide([Number], 8), 2)5. Пятый бит (бит 4)
= Number.Mod(Number.IntegerDivide([Number], 16), 2)👍3❤2👀1
SET SQL_BIG_SELECTS = 1
Делаешь в mysql еще один маленький джойн и ловишь сообщение вида:
SQL Error [1104] [42000]: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
Когда ты в каком-то dBeaver или другом SQL редакторе - ты конечно не теряешься и храбро вбиваешь в окно запроса:
SET SQL_BIG_SELECTS = 1
И - вуаля! Запрос уже отрабатывает.
Но когда ты этот же запрос хочешь отработать через ODBC подключение в Excel - вот тут-то начинаются траблы!
Чтобы не приходилось городить процедуры, которые сохраняют результат запроса в отдельную таблицу или оборачивать запрос в процедуру, возвращающую табличное значение...
Чтобы отказаться от этих всех бубнов - нужно просто в настройках ODBC сделать как показано на картинке.
Всем Excel!
Делаешь в mysql еще один маленький джойн и ловишь сообщение вида:
SQL Error [1104] [42000]: The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET MAX_JOIN_SIZE=# if the SELECT is okay
Когда ты в каком-то dBeaver или другом SQL редакторе - ты конечно не теряешься и храбро вбиваешь в окно запроса:
SET SQL_BIG_SELECTS = 1
И - вуаля! Запрос уже отрабатывает.
Но когда ты этот же запрос хочешь отработать через ODBC подключение в Excel - вот тут-то начинаются траблы!
Чтобы не приходилось городить процедуры, которые сохраняют результат запроса в отдельную таблицу или оборачивать запрос в процедуру, возвращающую табличное значение...
Чтобы отказаться от этих всех бубнов - нужно просто в настройках ODBC сделать как показано на картинке.
Всем Excel!
🔥8👍4
ГГГГ-НН (ММ-ДД)
Как лучше показывать недели в отчете?
Вечная беда - как сделать недельное представление данных интуитивно понятным.
Когда говоришь - тридцатая неделя 2026-30...
Сколько людей сможет сопоставить это с календарем и понять хоть примерно про какой месяц идет речь.
Даю супер лайфхак!
Пишите номер недели и в скобках указывайте месяц и день первого дня недели.
Тогда сразу всем станет хорошо.
Ведь 2026-30 превратится в 2026-30 (07-20) или вовсе даже в 2026-30 (20 июля).
Чтобы каждый раз не лохматить ИИшку дам варианты такого форматирования на нескольких языках.
Excel
Пользуйтесь на здоровье! 😊
Всем Эксель!
Как лучше показывать недели в отчете?
Вечная беда - как сделать недельное представление данных интуитивно понятным.
Когда говоришь - тридцатая неделя 2026-30...
Сколько людей сможет сопоставить это с календарем и понять хоть примерно про какой месяц идет речь.
Даю супер лайфхак!
Пишите номер недели и в скобках указывайте месяц и день первого дня недели.
Тогда сразу всем станет хорошо.
Ведь 2026-30 превратится в 2026-30 (07-20) или вовсе даже в 2026-30 (20 июля).
Чтобы каждый раз не лохматить ИИшку дам варианты такого форматирования на нескольких языках.
Excel
=ТЕКСТ(A2;"гггг") & "-" & ТЕКСТ(НОМНЕДЕЛИ.ISO(A2);"00") & " (" & ТЕКСТ(A2-ДЕНЬНЕД(A2;2)+1;"ММ-дд") & ")"SELECT
CONCAT(
YEAR(your_date_column),
'-',
LPAD(WEEK(your_date_column, 3), 2, '0'),
' (',
DATE_FORMAT(
DATE_ADD(
MAKEDATE(YEAR(your_date_column), 1),
INTERVAL (WEEK(your_date_column, 3) - 1) WEEK
),
'%m-%d'
),
')'
) AS year_week_first_day
FROM your_table;
SET DATEFIRST 1; -- Устанавливаем понедельник как первый день недели
SELECT
CONCAT(
YEAR(your_date_column),
'-',
FORMAT(DATEPART(iso_week, your_date_column), '00'),
' (',
FORMAT(
DATEADD(DAY, 1 - DATEPART(dw, your_date_column), your_date_column),
'MM-dd'
),
')'
) AS year_week_first_day
FROM your_table;
SELECT
TO_CHAR(your_date_column, 'YYYY') || '-' ||
TO_CHAR(your_date_column, 'IW') || ' (' ||
TO_CHAR(date_trunc('week', your_date_column), 'MM-DD') ||
')' AS year_week_first_day
FROM your_table;
SELECT
TO_CHAR(your_date_column, 'YYYY') || '-' ||
TO_CHAR(your_date_column, 'IW') || ' (' ||
TO_CHAR(TRUNC(your_date_column, 'IW'), 'MM-DD' ) ||
')' AS year_week_first_day
FROM your_table;
Пользуйтесь на здоровье! 😊
Всем Эксель!
🔥23👍4👎1
Самый популярный язык программирования — Excel. И он Тьюринг-полный / Хабр https://share.google/wOuyxFKs2fB85sZUi
Хабр
Самый популярный язык программирования — Excel. И он Тьюринг-полный
Недавно на созвоне финансовый аналитик показывал мне свою Excel-модель. Двенадцать листов, формулы ссылаются друг на друга через три уровня вложенности, именованные диапазоны вместо переменных, и...
👍14🆒1