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

MS, Libreoffice & Google docs

762 поста 14 933 подписчика

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

396

ВПР и числа-как-текст

Обычные числа и числа-как-текст (т.е. числа, которые только выглядят как числа, а, по-сути, являются текстом) - это причина многих проблем и сложностей при работе с данными в Microsoft Excel. Одна из подобных ситуаций - использование функции ВПР (VLOOKUP) для поиска и подстановки, когда в исходных данных есть эти пресловутые числа в текстовом формате.


Рассмотрим классический пример - подстановку цен из прайс-листа в таблицу заказов по совпадению артикулов:

Как и множество других функций и инструментов Excel, ВПР считает числа как текст не равноценными этим же числам в нормальном виде, поэтому выдаёт ошибку #Н/Д, сигнализируя, что искомое значение не обнаружено, хотя визуально оно, вроде бы, есть.


Давайте рассмотрим различные сценарии, с которыми мы здесь можем столкнуться и решения для каждого из них.


Примечание: Различить нормальные и текстовые числа не всегда легко. Иногда на таких ячейках появляется зелёный уголок-индикатор, иногда - нет. В этой статье, для наглядности, я буду выравнивать числа-как-текст по левому краю, а нормальные числа - по правому.


Вариант 1. Числа-как-текст в искомых значениях


Предположим для начала, что псевдочисла эпизодически встречаются у нас в искомых значениях, т.е. в таблице заказов (диапазон B4:B7) и перемешаны с нормальными числовыми артикулами, что приводит к появлению ошибок.


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

- умножения или деления на 1

- прибавления или вычитания 0

- двойного знака минус перед артикулом (равносильно двойному умножению на -1)


Значение артикула от выполнения такой безобидной математической операции никак не изменится, но сам факт её выполнения заставит Excel воспринимать артикул именно как число. А значит и ВПР найдет текстовые значения без проблем:

Вариант 2. Числа-как-текст в таблице, где ищем


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

Самым простым и компактным вариантом будет приклеивание к артикулу пустой строки:

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


Вариант 3. Пропадание начальных нулей


Частным случаем предыдущего примера бывает сценарий, когда артикулы в прайс-листе не просто текстовые, но ещё и содержат нули в начале строк, дополняющие их до заданной разрядности. Тут поможет функция ТЕКСТ (TEXT), которая умеет любое число выводить как текст по заданному шаблону:

Вариант 4. Числа-как-текст вперемешку с числами в обеих таблицах


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

Звучит страшно, но решается легко - нужно просто скомбинировать первый и второй способы, вложив их в функцию ЕСЛИОШИБКА (IFERROR). Эта функция прокачает обе версии ВПР - "текстовую" и "числовую" - и выдаст ту, которая не приводит к ошибке #Н/Д:

Вот и всё - и никаких больше ошибок :)

Источник

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

Excel понятным языком: быстрое перемещение строк и столбцов

Excel понятным языком: быстрое перемещение строк и столбцов

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

Вот схема, как это быстро сделать:


1. Выделите строку или столбец;

2. Зажмите и удерживайте клавишу SHIFT;

3. Наведите курсор мыши на границу выделенной строки или столбца, зажмите левую кнопку мыши;

4. Перетащите строку или столбец в необходимое место;

5. Отпустите.


Готово!


Короткое видео ⬇⬇⬇

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

Суммирование в Excel сложение, мастер функций, автосумма, горячие клавиши

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


Сумму чисел можно найти двумя путями:

1. Сложением ячеек или констант,через знак "+" в формуле;

2. Используя встроенную функцию СУММ.


Функция СУММ(SUM) – математическая функция Microsoft Excel, позволяет складывать отдельные значения, диапазоны ячеек, ссылки на ячейки или данные всех этих трех видов.


Имеет вид:

=СУММ(число1;[число2];…), где:


Число1 (Обязательный аргумент), первое число для сложения. Может быть число 4 (константа), ссылка на ячейку, например, G6, или диапазон ячеек, например, A2:A10.

Число2 – 255 (Необязательный аргумент ), второе число для сложения. Можно указать до 255 чисел.


Функцию можно вызвать:


1. Выберите в строке меню Главная ► Редактирование ► Автосумма:

2. Строка меню Функции ► Библиотека функций ► Автосумма или в разделе Математические:

3. С помощью мастера функций, нажав на иконку в строке формул:

Окно мастера функций:

или в строке меню Функции ► Библиотека функций ► Вставить функцию:

4. Самый быстрый способ, сочетание клавиш ALT+ =


☝ Функция СУММ(SUM) не работает!?!


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


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


Коллега переслал файл, в котором суммы при протяжке формул не меняются?

Проверьте стоит ли автоматический пересчет в файле, на строка меню Формулы ► Параметры вычислений ► Автоматически.


В этом видео собраны все возможные варианты суммирования, от самых не продуктивных, до быстрых и эффективных ⬇⬇⬇

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

Поиск и удаление повторяющихся значений в Excel

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

Давайте разберемся, как это сделать быстро.


Инструмент Удаление дубликатов


1. Выделите ячейку таблицы, в которой необходимо удалить дубликаты.

2. Выберите на вкладке Данные ►Удалить дубликаты:

3. В окне, по умолчанию проставлена галка Мои данные содержат заголовки, уберите при необходимости. В разделе Колонны установите или снимите галки (поиск и удаление будет производиться только по выбранным столбцам), нажмите OK:

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

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


1. Скопируйте данные или CTRL+С

2. Вкладка меню Главная ► Вставить ► Специальная вставка ► Траспонировать или вызов окна CTRL+ALT+V


Для корректной работы инструмента с полями формата Дата убедитесь, чтобы все поля имели одинаковый формат даты, например 01.01.2020


Удаление дубликатов при помощи Расширенного фильтра


Операцию выше можно сделать при помощи инструмента Расширенный фильтр.

Актуально, если у вас версия Excel 2003, в которой еще нет инструмента Удалить дубликаты.


1. Выделите шапку таблицы или всю таблицу (CTRL+A), в которой необходимо найти дубликаты.

2. Выберите на закладке Данные ► в разделе Сортировка и фильтр Дополнительно:

3. В окне, выберите вариант обработки Скопировать результат в другое место.

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

5. Поставьте галку Только уникальные записи:

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

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

Скройте повторяющиеся значения при помощи Расширенного фильтра:

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

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

Поиск дубликатов при помощи Сводной таблицы


1. Добавьте в вашу таблицу дополнительное поле для проверки:

2. Создайте Сводную таблицу, вкладка Вставка ► Сводная таблица.

Настройте поля:

3. Выберите вариант отображения отчета, на вкладке Конструктор ► Макет отчета ► Показать в табличной форме.

4. Уберите промежуточные итоги Конструктор ► Промежуточные итоги:

Выделение повторяющихся значений при помощи условного форматирования для Excel 2007+


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

2. На вкладке Главная ► Условное форматирование ► Правила выделения ячеек ► Повторяющиеся значения:

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

Данные будут подсвечены:

Как удалить дубликаты и разбить текст по столбцам, смотрите видео ⬇⬇⬇

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

Применение Временной шкалы и Срезов в Excel

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

Срезы можно использовать для "Умных" и Сводных таблиц, Временную шкалу только для Сводных.


Сводная таблица является по сути конструктором используя который можно быстро собрать нужные показатели по заданным критериям. Такие таблицы удобно применять для построения различных отчетов. Подробнее о Сводных таблицах смотрите статью: Сводные таблицы в Excel: как создать?


Срез


Срез представляет собой фильтр, вынесенный в отдельный графический элемент. Добавить один или несколько Срезов, для "Умной" или Сводной таблицы, можно на вкладке Анализ ► Вставить срез:

В появившемся окне выберите столбец или несколько столбцов по которым будем построен фильтр:

Либо, на закладке Вставка ► Срез.


Внешний вид Срезов:

Временная шкала


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

Чтобы добавить шкалу на лист, выберите на вкладке Анализ ► Вставить временную шкалу:

Так же можно добавить через вкладку Вставка ► Временная шкала.


В открывшемся окне установите галку на против Дата ► ОK:

Внешний вид Временной шкалы:

Чтобы производить фильтрацию Временной шкалой:


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

2. Перетащите полосу прокрутки временной шкалы к периоду времени, который вы хотите выбрать;


3. В элементе управления отрезком времени нажмите левой кнопкой на плитку периода времени и зажав перетащите ее, будет выбран период.


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


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


Настройка вида Временной шкалы и Среза


Временную шкалу или Срез можно переместить расположив в более удобном месте, изменить их размер или стиль.


Чтобы переместить фигуру, просто перетащите ее в нужное место на листе.


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


Чтобы изменить стиль, нажмите на фигуру, отобразится меню Инструменты временной шкалы, выберите нужный стиль на вкладке Параметры.


Использование Временной шкалы и Срезов для нескольких Сводных таблиц


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


Щелкните на Временную шкалу или Срез, а затем выберите на вкладке Параметры ► Подключения к отчетам. В открывшемся окне выберите Сводные таблицы, которые вы хотите добавить:

Для использования Временной шкалы для "Умной" таблицы преобразуйте её в Сводную, на вкладке Конструктор ► Сводная таблица или Вставка ► Сводная таблица. Это очень удобно и даёт больше вариантов для маневра.


Подробнее о Временной шкале и Срезах смотрите в видео ⬇⬇⬇

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

"Умные" таблицы в Excel1

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


Разве данные в Excel имеющие структуру таблицы – это не таблица?
Отвечу вам: Нет.

То что вы считаете таблицей, представляет собой Рабочую область листа.


Таблица – это объект, имеющий свое название, внутреннюю структуру, свойства и преимущества по сравнению с обычным диапазоном ячеек.


Создание Таблицы


Для создания Таблицы встаньте на Рабочую область листа содержащую данные для создания таблицы и нажмите сочетание клавиш CTRL+T(L). В появившемся окне вы можете изменить диапазон выделения данных для построения таблицы, нажмите ОК.

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


Переименование Таблицы


В вашем файле планируется несколько Таблиц? Есть смысл присвоить для каждой Таблицы свое имя. Это облегчит их дальнейшее использование (например, при работе в Power Query или Power Pivot).


Для переименования установите курсор в любую ячейку Таблицы, в появившемся окне Конструктор в разделе Свойства введите новое имя в поле Имя таблицы:

Свойства Таблицы


1. Заголовки таблицы берутся из первой строки исходного диапазона.

При прокрутке вниз названия столбцов Таблицы (шапки) заменяют названия столбцов листа, следовательно дополнительное закрепление столбцов не требуется:

2. В таблицу по умолчанию добавляется фильтр, который можно убрать на вкладке Конструктор или сочетание CTRL+SHIFT+L:

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


4. При добавлении в таблицу новых столбцов и строк они автоматически включатся в Таблицу. При наличии формул они автоматически применяются для новых данных.


5. Добавить строку итогов (суммирование, среднее и др.) для столбцов Таблицы можно сочетанием клавиш CTRL+SHIFT+T:

Настройка Таблицы


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


Для использования Временной шкалы для Таблицы преобразуйте её в Сводную, на вкладке Конструктор ► Сводная таблица или Вставка ► Сводная таблица.


Преобразование Рабочей области в Таблицу является обязательным условием для использования возможностей Power Query и Power Pivot.

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

Чат с прогнозом погоды и триггеры в гугл таблицах (GS6)

Привет, дорогие подписчики!

Пост про парсер на питоне чуть задерживается. Т.к. моя профильная тема это гугл таблицы - нужно написать еще 2 поста, которые нам понадобятся для парсера на питоне. Одна из таких тем - триггеры. Чтобы показать всю суть инструмента - решил сделать бота, который каждое утро в одно и тоже время будет скидывать прогноз погоды на день.

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


Итак, нам нужно глобально сделать 3 вещи:

1 - забрать с какого-нибудь сайта прогноз погоды

2 - подключить бота и привязать его к таблице

3 - настроить триггер для отправки.


Посмотрев несколько сайтов с погодой - выбор пал на Яндекс, ввиду удобной структуры сайта.

Отсюда я забрал прогноз на дождик в ближайшее время:

Подробнее о том как спарсить данные с сайта в таблицу в этом посте: Парсинг данных с сайтов в гугл таблички  (GS1)

Тут приведу только формулу:

=importxml("https://yandex.ru/pogoda/moscow?via=hnav";"//p[@class='maps-widget-fact__title']")

И отсюда я забрал сам прогноз погоды:

Т.к. данные на сайте представлены в виде таблички, то удобнее использовать =importhtml()

Теперь подключаем бота. Как это сделать - читай тут: Подключение телеграм бота к гугл табличкам (GS3)


Важно! В прошлых постах мы всегда сами активировали бота из ТЛГ и скрипт всегда знал chat_id куда нужно отправлять сообщение. В этот раз айди нужно будет сохранить в таблицу в качестве переменной.

Логика простая - пишем простую команду, которую будет запускать бот (назовем ее /link). По этой команде бот будет в док записывать значение нужного нам айдишника.

Запишу его просто в ячейку f1.

Кусок кода:

Добавляем это значение в код.

Теперь код функции, которая собирает данные из таблицы в сообщение и отправляет их:

Как это выглядит в чате:

Теперь автоматизируем это, чтобы оно улетало в чат каждое утро.

Для этого заходим в триггеры проекта:

После сохранения он будет каждый день в 9 утра отправлять сообщение в чат.

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


Вот и всё, уважаемые чатлане. Как всегда - жду ваших комментариев)

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

Редизайнер таблиц в Excel

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


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

- простая однострочная шапка, где у каждого столбца будет свое уникальное название (имя поля)

- одна строка - одна законченная операция (сделка, продажа, проводка, проект и т.д.)

- без объединенных ячеек

- без разрывов в виде пустых строк и столбцов


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

из такой таблицы

сделать

В терминах баз данных нижнюю таблицу обычно называют плоской (flat) - именно по таким таблицам лучше всего строить отчеты сводных таблиц (pivot tables) и проводить аналитику.


Преобразовать двумерную таблицу в плоскую можно при помощи простого макроса. Откройте редактор Visual Basic через вкладку Разработчик - Visual Basic (Developer - Visual Basic Editor) или сочетанием клавиш Alt+F11. Вставьте новый модуль (Insert - Module) и скопируйте туда текст этого макроса:

Sub Redesigner()

Dim i As Long

Dim hc As Integer, hr As Integer

Dim ns As Worksheet

hr = InputBox("Сколько строк с подписями сверху?")

hc = InputBox("Сколько столбцов с подписями слева?")

Application.ScreenUpdating = False

i = 1

Set inpdata = Selection

Set ns = Worksheets.Add

For r = (hr + 1) To inpdata.Rows.Count

For c = (hc + 1) To inpdata.Columns.Count

For j = 1 To hc

ns.Cells(i, j) = inpdata.Cells(r, j)

Next j

For k = 1 To hr

ns.Cells(i, j + k - 1) = inpdata.Cells(k, c)

Next k

ns.Cells(i, j + k - 1) = inpdata.Cells(r, c)

i = i + 1

Next c

Next r

End Sub

После этого можно закрыть редактор VBA и вернуться в Excel. Теперь можно выделить исходную таблицу (полностью, с шапкой и первым столбцом с месяцами) и запустить наш макрос через Разработчик - Макросы (Developer - Macros) или нажав сочетание Alt+F8.


Макрос вставит в книгу новый лист и создаст на нем новый, реконструированный вариант выделенной таблицы. С такой таблицей можно работать "по полной программе", применяя весь арсенал средств Excel для обработки и анализа больших списков.


Также есть второй вариант для работы с большими таблицами

Sub Redesigner()

Dim inpdata As Range, realdata As Range, ns As Worksheet

Dim i&, j&, k&, c&, r&, hc&, hr&

Dim out(), dataArr, hcArr, hrArr

hr = Val(InputBox("Сколько строк с подписями данных сверху?"))

hc = Val(InputBox("Сколько столбцов с подписями данных слева?"))

Set inpdata = Selection

If inpdata.Rows.Count <= hr Or inpdata.Columns.Count <= hc Then Exit Sub

Set realdata = inpdata.Offset(hr, hc).Resize(inpdata.Rows.Count - hr, inpdata.Columns.Count - hc)

dataArr = realdata.Value

If hr Then hrArr = inpdata.Offset(0, hc).Resize(hr, inpdata.Columns.Count - hc).Value

If hc Then hcArr = inpdata.Offset(hr, 0).Resize(inpdata.Rows.Count - hr, hc).Value

ReDim out(1 To Application.CountA(realdata), 1 To hr + hc + 1)

Set ns = Worksheets.Add

For i = 1 To UBound(dataArr, 1)

For j = 1 To UBound(dataArr, 2)

If Not IsEmpty(dataArr(i, j)) Then

k = k + 1

For c = 1 To hc: out(k, c) = hcArr(i, c): Next c

For r = 1 To hr: out(k, c + r - 1) = hrArr(r, j): Next r

out(k, c + r - 1) = dataArr(i, j)

End If

Next j, i

ns.Cells(2, 1).Resize(UBound(out, 1), UBound(out, 2)) = out

End Sub

Редизайн таблиц сэкономит кучу времени, нервов и сил, чтобы в оставшееся время почитать пикабу))

Взято отсюда

Показать полностью 2
Отличная работа, все прочитано!