Реальный Excel
1.16K subscribers
51 photos
12 videos
6 files
64 links
Все про аналитику в продажах, логистике, производстве и кадрах. Excel, SQL и другие неизбежные радости.

Для личных сообщений: @Pavel_Taranukha
Канал на rutube: https://rutube.ru/channel/31043263
Download Telegram
https://www.businessinsider.com/excel-most-in-demand-skill-tech-job-listings-ai-2025-8 - На фоне развития ИИ Microsoft Excel, по-прежнему является самым упоминаемым навыком в списках вакансий. 😊
8
Держите мой первый подкаст.

Расскажите - как вам? 😊

https://vkvideo.ru/video-230335429_456239026?list=50c196e395256a4d42

https://youtu.be/x_K370CnkyA
👍16
This media is not supported in your browser
VIEW IN TELEGRAM
🔥4🤓1
🔍 Битовые маски: суперсила для работы с данными

Сегодня о битовых масках — мощном инструменте, который делает магию с данными.

🤔 Что это вообще такое?
Битовая маска — это число, в котором каждый бит имеет специальное значение. Представьте, что у вас есть швейцарский нож данных — каждая "лезвие" (бит) отвечает за свою функцию.

🎯 Где это реально используют?

Системы прав доступа (можно/нельзя)

🏷 Множественные флаги состояний

🎮 Игровая разработка (статусы эффектов)

📊 Оптимизация хранения данных

🔐 Компактные настройки

💻 Практика в таблицах (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)
= 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)
👍32👀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!
🔥8👍4
ГГГГ-НН (ММ-ДД)
Как лучше показывать недели в отчете?


Вечная беда - как сделать недельное представление данных интуитивно понятным.
Когда говоришь - тридцатая неделя 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
Гляжу прям начали смотреть ролик и качать файл.
Это приятно.

Но стали возникать вопросы: "У моих клиентов нет эксель - что делать?".
"Как мне собирать данные от клиентов?".

Специально для вас портировал все это в гуглодоки.
Делайте копию и работайте.

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

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

https://docs.google.com/spreadsheets/d/1dKoFMnomRQ4b0R4NOsXujf-UQSSZJkJdZBLxRuz30ns/edit?usp=sharing
🔥6👍4🤝1
Привет!

Делюсь победой над ЯНДЕКС ТАБЛИЦАМИ.

Недавно потребовалось через power query забрать данные из таблиц.
Ранее была пара безуспешных подходов, но результатом был сокрушительный фиаско.

И вот сейчас приперло от слова "Совсем".
В итоге сначала родился батник, которому даешь ссылку на таблицу и он выкачивает ее на локальный диск.

А потом и вовсе весьма лаконичный запрос для подключения к таблице из power query.

Держите этот запрос.
let
PublicUrl = "https://disk.yandex.ru/i/здесь вставляем ссылку на яндекс отчет",

FileInfo = Json.Document(
Web.Contents(
"https://cloud-api.yandex.net/v1/disk/public/resources",
[
Query = [
public_key = PublicUrl
]
]
)
),

FileUrl = FileInfo[file],

Workbook = Excel.Workbook(
Web.Contents(FileUrl),
null,
true
)
in
Workbook


Всем эксель!
🔥122🤝2👍1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Кто вчера бежал половинку - каждого поддерживал как мог.
Связки порвал в хлам 🤪🤪🤪

Вы лучшие!!!!!
💪💪💪💪💪💪💪
👍6🔥2😁1🤡1
Кому нужна буржуйская карта?

Я 6 месяцев пользуюсь этим сервисом - доволен, как слон.

Теперь у них еще и рефералка появилась - каждому подписчику 5 денег на кошелек.

Держите, пользуйтесь наздоровье.

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

https://platipomiru.com/?code=UI16CUOV
🤝8👎1
Сегодня выкатил новый продукт.

Раньше пару лет упорно оттачивал его на экселе, а теперь полностью портировал на веб-интерфейс.

Если у вас есть в друзьях селлеры маркетплейсов ВБ, Озон или Яндекс.
Прям смело рекомендуйте.

То что умеет эта штука в плане управления запасами - не умеет никто!)

Вот ссылка на мануал: https://t.me/gotoChannelBot?startapp=TL4630526fa725ed-TfromTrueExcel-P69
🔥10