Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Отправься в мир мышек с забегами в реальном времени! Призывай духов, собирай команду для сражений, проходи кампанию, выполняй задания, наряжай персонажа и общайся с друзьями в веселом онлайн-приключении.

Мыши: Эволюция

Аркады, Приключения, Казуальные

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
3
Altogor
Altogor
Лига помощи Excel

Гуру экселев и повелители таблиц, взываю к вам⁠⁠

3 месяца назад
Гуру экселев и повелители таблиц, взываю к вам

ПОМОГИТЕ ПОЖАЛУЙСТА!
Звуки танца призыва EXСEL-шамана.jpg
При выполнении функции, возвращаемое значение имеет форматирование, примененное к данной ячейке.
Как сделать так, чтобы применить форматирование к возвращаемому значению внутри формулы, например (как это представляется мне):

=СЦЕП(ЭТУ ХУ*НЮ СДЕЛАТЬ КРАСНОЙ(A2);" ";ЭТУ ХУ*НЮ СДЕЛАТЬ ЗЕЛЕНОЙ(B2);" ";ЭТУ ХУ*НЮ СДЕЛАТЬ ЖИРНОЙ (C2);ЭТУ ХУ*НЮ ПОДЧЕРКНУТЬ (D2);ЭТУ ХУ*НЮ СДЕЛАТЬ НАКЛОННО(E2)) ну и так далее.

Если что, то как для тупого объясните, каким образом мне это реализовать, какую функцию/или что-то ещё применить (макросы не могу)

[моё] Microsoft Excel Microsoft office Без рейтинга
12
15
ClownsInOffice
ClownsInOffice
Офисные будни

Одно неловкое движение:⁠⁠

3 месяца назад
Перейти к видео
[моё] Короткие видео Вертикальное видео Юмор Офис Офисные будни Microsoft Excel Таблица Коллеги Работа Трудовые будни Видео
5
2
Аноним
Аноним
Лига помощи Excel

Взвываю сильнейших⁠⁠

3 месяца назад

Задача - калькулятор расчета стоимости

Длина * Ширина * Цвет (с записанными в отдельном листе множителями)

Сам калькулятор

Сам калькулятор

Множители к Цвету. С этого листа , в лист Калькулятор, должны притягиваться множители из столбца В

Множители к Цвету. С этого листа , в лист Калькулятор, должны притягиваться множители из столбца В

Макет действия

Макет действия

Заранее благодарю за дельный совет. Буду молиться за твою карму. Сына в твою честь назову

Показать полностью 3
Компьютерная помощь Софт Google Таблицы Microsoft Excel Помощь Консультация Длиннопост
7
4
rick1177
rick1177

РЕГУЛЯРНЫЕ ВЫРАЖЕНИЯ В EXCEL И УЖЕ ОФИЦИАЛЬНО⁠⁠

3 месяца назад

Люди делятся на два типа: тех, кто любит регулярки, и тех, кто их терпеть не может.

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

Excel и ранее поддерживал обработку регулярных выражений. Известный блогер Николай Павлов (он весьма длинно называет себя в роликах всякими словами, но действительно – крутой эксперт) когда-то писал статью, где можно было добавить макрофункцию и пользоваться этим благом.

Но вот недавно я узнал, что теперь Excel начал поддерживать этот функционал! В русской версии эти функции звучат как: РЕГТЕСТ, РЕГИЗВЛЕЧЬ, РЕГЗАМЕНИТЬ. История прекрасная! Вы можете теперь в любой текстовой строке найти нужно, проверить существование подстроки, выполнить замену.

Пример простой:

=РЕГИЗВЛЕЧЬ("Дата 04-06-2025 действует";"(\d{2}-\d{2}-\d{4})")

Здесь мы не будем подробно изучать основы регулярных выражений!

А вот пример прилагаю.

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

Показать полностью
Аналитика Microsoft Excel Regex Регулярные выражения Текст Telegram (ссылка)
28
16
TECHLiveHACK
TECHLiveHACK

В Лас-Вегасе завершился ежегодный чемпионат мира по Excel — победитель получил крутой пояс и $5000⁠⁠

3 месяца назад
Перейти к видео

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

Источник

Показать полностью
Программа Гайд Технологии Google Microsoft Excel Тестирование Приложение Лас-Вегас Чемпионат мира Telegram (ссылка) Видео Короткие видео
1
19
Jelizaveta
Программирование на python

Освоение форматирования ячеек Excel с помощью Python: Полное руководство⁠⁠

3 месяца назад

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

  • Введение в бесплатную библиотеку Spire.XLS

  • Как форматировать ячейки в Excel с помощью Python

  • Продвинутые техники форматирования ячеек

  • Пример комплексной реализации

  • Заключение

Введение в бесплатную библиотеку Spire.XLS

Бесплатная библиотека Spire.XLS для Python — это легковесная, но мощная библиотека, которая позволяет создавать, редактировать и форматировать файлы Excel без необходимости установки Microsoft Excel.

Чтобы начать, установите библиотеку через pip:

pip install spire.xls.free

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

from spire.xls import *

workbook = Workbook()

workbook.CreateEmptySheet()

sheet = workbook.Worksheets[0]

sheet.Range["A1"].Text = "Привет, мир!"

workbook.SaveToFile("output.xlsx")

Этот код создает новый файл Excel с именем "output.xlsx" и текстом "Привет, мир!" в ячейке A1.

Как форматировать ячейки в Excel с помощью Python

Программное форматирование ячеек включает в себя установку таких свойств, как шрифт, выравнивание, границы и заливки. Давайте рассмотрим, как это сделать с помощью бесплатной библиотеки Spire.XLS.

Установка свойств шрифта

Вы можете настроить стиль шрифта, размер и цвет ячейки. Например:

font = sheet.Range["A1"].Style.Font

font.Name = "Arial"

font.Size = 12

font.IsBold = True

font.Color = Color.FromArgb(40, 255, 0, 0)

Установка выравнивания

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

cell = sheet.Range["A1"]

cell.Style.HorizontalAlignment = HorizontalAlignType.Left

cell.Style.VerticalAlignment = VerticalAlignType.Bottom

range = sheet.Range["B1:D1"]

range.Style.HorizontalAlignment = HorizontalAlignType.Center

range.Style.VerticalAlignment = VerticalAlignType.Center

Добавление границ

Чтобы выделить ваши данные, вы можете добавить границы к ячейкам или диапазонам:

cell = sheet.Range["A1"]

border = cell.Style.Borders[BordersLineType.EdgeTop]

border.LineStyle = LineStyleType.Thick

border.Color = Color.get_Green()

border = cell.Style.Borders[BordersLineType.EdgeBottom]

border.LineStyle = LineStyleType.Double

border.Color = Color.get_Blue()

Установка цвета заливки или узора ячейки

Для улучшения визуальной ясности вы можете применить сплошные цветовые заливки или узорные фоны к ячейкам:

cell = sheet.Range["A1"]

cell.Style.Color = Color.get_LightBlue()

cell = sheet.Range["A2"]

cell.Style.FillPattern = ExcelPatternType.Percent125Gray

Объединение или разъединение ячеек

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

sheet.Range["A1:C1"].Merge()

sheet.Range["B1:C1"].UnMerge()

Применение форматов чисел

Excel предлагает различные форматы чисел, такие как валюта, дата и процент. Вот как применить форматы чисел:

sheet.Range["A1"].NumberValue = 1234.567

sheet.Range["A1"].NumberFormat = "0.00"

sheet.Range["A2"].NumberValue = 0.25

sheet.Range["A2"].NumberFormat = "0%"

sheet.Range["A3"].NumberValue = 43831

sheet.Range["A3"].NumberFormat = "yyyy-mm-dd"

sheet.Range["A4"].NumberValue = 1234.567

sheet.Range["A4"].NumberFormat = "$#,##0.00"

Продвинутые техники форматирования ячеек

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

Условное форматирование

Условное форматирование — это мощный инструмент, который выделяет тенденции или аномалии в ваших данных. Вот пример:

range = sheet.Range["A1:A10"]

format = range.ConditionalFormats.AddCondition()

format.FormatType = ConditionalFormatType.CellValue

format.Operator = ComparisonOperatorType.Greater

format.FirstFormula = "100"

format.BackColor = Color.get_Green()

format.IsBold = True

Форматирование ячеек с помощью пользовательского стиля

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

style = workbook.Styles.Add("customStyle")

style.Font.IsBold = True

style.Font.Size = 12

style.Font.Color = Color.FromArgb(20, 0, 0, 255)

style.BackgroundColor = Color.FromArgb(20, 255, 255, 0)

style.Borders.All = LineStyleType.Dashed

style.Borders.Color = Color.get_Purple()

sheet.Range["A2:F2"].Style = style

Копирование формата ячейки

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

style = sheet.Range["A1"].Style

sheet.Range["A2:F5"].Style = style

Пример комплексной реализации

Теперь давайте объединим все в комплексном примере, который обобщает все обсуждаемые техники:

from spire.xls import *

from spire.xls.common import *

workbook = Workbook()

worksheet = workbook.Worksheets[0]

worksheet.Name = "Пример комплексного стиля"

# Создание строки заголовка

title = worksheet.Range["A1:E1"]

title.Merge()

title.Text = "Информация о сотрудниках"

title.Style.Font.FontName = "Arial"

title.Style.Font.Size = 16

title.Style.Font.Color = Color.get_White()

title.Style.Color = Color.get_DarkBlue()

title.Style.HorizontalAlignment = HorizontalAlignType.Center

title.Style.VerticalAlignment = VerticalAlignType.Center

title.RowHeight = 30

# Установка заголовков

headers = ["ID", "Имя", "Отдел", "Дата приема", "Зарплата"]

for i, header in enumerate(headers):

cell = worksheet.Range[2, i + 1]

cell.Text = header

cell.Style.Font.IsBold = True

cell.Style.Color = Color.get_LightGray()

cell.Style.Borders[BordersLineType.EdgeBottom].LineStyle = LineStyleType.Medium

cell.Style.Borders[BordersLineType.EdgeBottom].Color = Color.get_DarkBlue()

# Заполнение данных

data = [

[1, "Чжан Сан", "Технический отдел", "2020-05-15", 15000],

[2, "Ли Си", "Маркетинговый отдел", "2019-08-22", 12000],

[3, "Ван У", "Отдел кадров", "2021-03-10", 13500],

[4, "Жао Лю", "Финансовый отдел", "2018-11-05", 16000]

]

for r, row in enumerate(data):

for c, value in enumerate(row):

cell = worksheet.Range[r + 3, c + 1]

if c == 3:  # Дата

cell.DateTimeValue = DateTime.Parse(value)

cell.NumberFormat = "yyyy-mm-dd"

elif c == 4:  # Зарплата

cell.NumberValue = value

cell.NumberFormat = "$#,##0.00"

else:

cell.Text = str(value)


# Установка чередующихся цветов строк

if r % 2 == 0:

cell.Style.Color = Color.get_LightYellow()

else:

cell.Style.Color = Color.get_LightCyan()

# Установка границ

worksheet.Range["A2:E6"].BorderAround(LineStyleType.Medium, Color.get_Black())

worksheet.Range["A2:E6"].BorderInside(LineStyleType.Thin, Color.get_Gray())

# Авто подгонка ширины столбцов

for i in range(1, 6):

worksheet.AutoFitColumn(i)

# Добавление условного форматирования - выделение ячеек с зарплатой больше 14000

format = worksheet.Range["E3:E6"].ConditionalFormats.AddCondition()

format.FormatType = ConditionalFormatType.CellValue

format.Operator = ComparisonOperatorType.Greater

format.FirstFormula = "14000"

format.FontColor = Color.get_Red()

format.IsBold = True

# Получение выделенного диапазона

locatedRange = worksheet.AllocatedRange

# Проход по строкам

for rowNum in range(1, locatedRange.RowCount):

# Выравнивание текста по центру

locatedRange.Rows[rowNum].HorizontalAlignment = HorizontalAlignType.Center

locatedRange.Rows[rowNum].VerticalAlignment = VerticalAlignType.Center

# Установка высоты строки

locatedRange.Rows[rowNum].RowHeight = 20

# Проход по столбцам

for columnNum in range(0, locatedRange.ColumnCount):

# Установка ширины столбца

if(columnNum == 2):

locatedRange.Columns[columnNum].ColumnWidth = 19

else:

locatedRange.Columns[columnNum].ColumnWidth = 14

# Сохранение книги

workbook.SaveToFile("ComprehensiveStyleExample.xlsx", FileFormat.Version2016)

workbook.Dispose()

Освоение форматирования ячеек Excel с помощью Python: Полное руководство

Заключение

В этом руководстве вы узнали, как форматировать ячейки в Excel с помощью Python и библиотеки Free Spire.XLS. От базовых техник форматирования до продвинутых функций, таких как условное форматирование, теперь вы можете программно создавать визуально привлекательные файлы Excel.

Показать полностью 1
Python Microsoft Excel Длиннопост
8
0
VelStyling
VelStyling
Серия SQL: знакомство

AND и OR в SQL: как правильно соединять условия⁠⁠

3 месяца назад

Когда мы работаем с базой данных, почти всегда хотим не просто что-то выбрать, а применить несколько условий сразу. Например: выбрать всех клиентов старше 18 лет и с активной подпиской.

И здесь на помощь приходят два основных логических оператора: AND и OR.

AND и OR в SQL: как правильно соединять условия

Что делают AND и OR

  • AND — «и». Все условия должны быть выполнены одновременно.
    Пример: выбрать из холодильника молоко и яйца, чтобы приготовить омлет:

SELECT *

FROM fridge

WHERE product = 'milk' AND product = 'eggs';

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

OR — «или». Достаточно, чтобы выполнено было хотя бы одно условие.
Пример: выбрать продукты, которые нужно купить или молоко, или яйца:

SELECT *

FROM shopping_list

WHERE product = 'milk' OR product = 'eggs';

Где могут использоваться

Эти операторы обычно используют в блоке WHERE, чтобы фильтровать данные.
Также можно применять их в:

  • HAVING — фильтрация агрегатов после GROUP BY

  • JOIN ON — комбинирование условий соединения таблиц

Пример с HAVING:

SELECT category, COUNT(*)

FROM fridge

GROUP BY category

HAVING COUNT(*) > 5 AND AVG(expiry_date) < '2025-08-01';

Особенности и нюансы:

  • Порядок выполнения важен

    AND имеет более высокий приоритет, чем OR.

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

    SELECT *

    FROM fridge

    WHERE (product = 'milk' OR product = 'eggs') AND expiry_date < '2025-08-01';

  • AND «сжимает» результат, OR «расширяет» результат

    AND оставляет меньше строк, OR — больше

Частые ошибки

  • Забыли скобки и получили слишком большой или слишком маленький результат

  • Использовали AND там, где нужен OR (или наоборот)

  • Смешали NULL значения: NULL AND TRUE и NULL OR TRUE могут вести себя неожиданно

Представим, что мама проверяет холодильник:

  • У неё есть список продуктов, которые могут испортиться: молоко, яйца, йогурт

  • Она хочет приготовить что-то, если и молоко, и яйца в наличии → AND

  • Она хочет перекусить, если есть молоко или йогурт → OR

В SQL это выглядит так:

-- Для приготовления омлета

SELECT *

FROM fridge

WHERE product = 'milk' AND product = 'eggs';

-- Для перекуса

SELECT *

FROM fridge

WHERE product = 'milk' OR product = 'yogurt';

AND и OR — это простые, но мощные инструменты фильтрации. Правильное использование скобок и понимание приоритета операторов помогает избежать ошибок и выбирать точно те данные, которые нужны.

А в своем канале На связи: SQL я публикую информацию с особенностями и нюансами в языке SQL, разбираю аналитические запросы и подходы работы с данными. Канал создала недавно с нулем подписчиков, но там уже есть интересная информация для работы аналитиков. Подписывайся!

Показать полностью
[моё] Аналитика Эмоциональное выгорание Аналитик Системный аналитик SQL Microsoft Excel Таблица Данные База данных IT
1
6
VelStyling
VelStyling
Серия SQL: знакомство

WHERE в SQL: как домохозяйка наводит порядок в холодильнике⁠⁠

3 месяца назад

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

WHERE в SQL: как домохозяйка наводит порядок в холодильнике

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

А в своем канале На связи: SQL я публикую информацию с особенностями и нюансами в языке SQL, разбираю аналитические запросы и подходы работы с данными. Канал создала недавно с нулем подписчиков, но там уже есть интересная информация для работы аналитиков. Подписывайся!

Нам нужно выкинуть все продукты, у которых истек срок годности:

SELECT *
FROM fridge
WHERE expiry_date < CURRENT_DATE;

fridge — наша таблица с продуктами
expiry_date < CURRENT_DATE — условие: выбираем просроченные продукты
CURRENT_DATE - текущая дата

Что можно писать в WHERE

  • Сравнения: =, >, <, >=, <=

  • Логические связки: AND, OR, NOT

  • Проверки на вхождение: IN, BETWEEN, LIKE

  • Подзапросы: «проверить список покупок перед выбором»

Или, мы хотим приготовить что-то на десерт:

SELECT *
FROM fridge
WHERE category = 'dessert' AND expiry_date > CURRENT_DATE;

Условие AND expiry_date > CURRENT_DATE добавляем на случай, если мы не выкинули всю просрочку до этого.

Подзапросы

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

SELECT *
FROM cooking_recipe
WHERE product NOT IN (SELECT product FROM fridge);

WHERE проверяет какие продукты отсутствуют в холодильнике.

Аналогично можно использовать EXISTS или NOT EXISTS
SELECT *
FROM fridge f
WHERE EXISTS (SELECT 1 FROM cooking_recipe s WHERE s.product = f.product);

EXISTS = есть продукт в списке
NOT EXISTS = нет продукта в списке

ANY \ ALL

Эти конструкции позволяют сравнивать с набором значений.

SELECT *
FROM fridge
WHERE expiry_date <= ALL (SELECT expiry_date FROM fridge WHERE category = 'milk');

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

  • Подзапрос (SELECT expiry_date FROM fridge WHERE category = 'milk') возвращает даты всех банок молока.

  • Условие expiry_date <= ALL (...) означает: выбрать только те банки, у которых дата годности меньше или равна каждой другой банке молока.

  • Практически это банка (или несколько, если даты совпадают), которая старше всех остальных.

То есть, результат будет одна или несколько банок с самой ранней датой годности.

SELECT *
FROM fridge
WHERE expiry_date <= ANY (SELECT expiry_date FROM fridge WHERE category = 'milk');

  • Условие expiry_date <= ANY (...) означает: выбрать все банки молока, у которых дата годности меньше или равна хотя бы одной другой банке молока.

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

  • Результат может быть несколько банок, не обязательно только одна. Все, кто «моложе или равны хотя бы одной другой», будут выбраны.

CASE в WHERE

Можно использовать CASE для сложной логики

SELECT *
FROM fridge
WHERE
CASE
WHEN product = 'milk' THEN shelf = 'top'
ELSE shelf = 'middle'
END;

Если я ищу молочные продукты в холодильнике, то должна их искать на самой верхней полке, иначе - на средней.


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

Показать полностью
[моё] Аналитика Эмоциональное выгорание Услуги SQL Microsoft Excel Аналитик Данные База данных Запросы IT Смена профессии Длиннопост
5
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии