Как отобразить в excel вкладки Excelka.ru
В Excel пропали листы: как включить (Эксель)
В Экселе пропали листы внизу? При работе в Excel довольно часто возникает ситуация, при которой исчезают кнопки смены листов. Это крайне неприятно, так как быстрое переключение между листами – функция важная и удобная. Причины возникновения проблемы могут быть разными. Решить ее можно различными методами.
Прежде-всего начала нужно проверить, поставлена ли галочка на пункте «Показывать ярлычки листов».
Для Excel 2010:
1. Переходим во вкладку «Файл»;
2. Выбираем «Параметры»;
3. Затем нужно перейти к вкладке «Дополнительно» и найти там запись «Показывать ярлычки листов».
Для Excel 2007:
1. Нажимаем кнопку Office в левом верхнем углу;
2. Внизу открывшего меню выбираем «Параметры Excel»;
3. Переходим во вкладку «Дополнительно» и ищем запись «Показывать ярлычки листов».
Для Excel 2003:
1. Нажимаем кнопку «Файл»;
2. Переходим во вкладку «Параметры», затем выбираем «Вид»;
3.
Убедившись, что галочка на нужном пункте отмечена, следуем другому решению проблемы.
Ярлычки листов могут пропасть, если размеры окна были изменены. Такая ситуация может возникнуть, если вы открывали несколько документов одновременно. Следует проверить, не перекрываются ли окна.
Ярлычки могут исчезнуть и в том случае, если расширение экрана отличается от расширения того экрана, где в последний раз был открыт документ.
Если вы пользуетесь Excel 2007 года, то кнопки переключения между листами могут исчезнуть после того, как были добавлены новые макросы и команды.
Кнопки переключения могут перекрываться нижней полосой прокрутки. Нужно внимательно посмотреть в самый низ документа и убедиться, что полоса прокрутки не перекрывает кнопки переключения между листами.
Нужный лист также может быть скрыт.
Для того, чтобы его отобразить, необходимо:
1. Нажать правой кнопкой мыши на любой из видимых листов;
2. Выбрать вкладку «показать». В появившемся списке два раза кликаем на скрытый файл.
Вот и все. Ярлычки переключения между листами вернулись на прежнее место.
Исчезли ярлычки листов
Если в нижней части книги не отображаются ярлычки листов, это может быть вызвано несколькими причинами. В таблице ниже приведены их описания и способы устранения.
Примечание: Представленные в этой статье изображения созданы в Excel 2016. Если вы используете другую версию, интерфейс может немного отличаться, но функции будут такими же (если не указано иное).
Ярлычки скрыты из-за изменения размеров окон.
Если вы восстановили несколько окон, убедитесь, что они не перекрываются. Возможно, верхняя часть одного окна Excel закрывает ярлычки листов другого окна.
Строка состояния находится под строкой формул.
Ярлычки также могут исчезнуть, если разрешение экрана выше, чем на компьютере, где книга сохранялась в последний раз.
Попробуйте увеличить размер окна, чтобы открыть ярлычки. Просто дважды щелкните заголовок окна.
Если ярлычки по-прежнему не отображаются, щелкните Вид > Упорядочить все > Рядом > ОК.
Параметр Показывать ярлычки листов отключен.
Сначала проверьте, действительно ли параметр Показывать ярлычки листов включен. Вот как это сделать:
Для других версий Excel: выберите Файл > Параметры > Дополнительно и убедитесь, что в разделе Показать параметры для следующей книги установлен флажок Показывать ярлычки листов.
Если вы используете Excel 2007, нажмите кнопку Microsoft Office , выберите пункт Параметры Excel
и категорию Дополнительно, а затем убедитесь, что в разделе Показать параметры для следующей книги установлен флажок Показывать ярлычки листов.Ярлычки перекрываются горизонтальной полосой прокрутки.
Наведите указатель мыши на край полосы прокрутки и удерживайте его, пока не появится двусторонняя стрелка (см. рисунок). Щелкните и перетащите стрелку вправо, пока не появится название ярлычка целиком и остальные ярлычки.
Чтобы отобразить лист, щелкните правой кнопкой мыши любой видимый ярлычок и выберите команду Отобразить. В диалоговом окне Вывод на экран скрытого листа выберите лист, который нужно отобразить, и нажмите кнопку ОК.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Скрыть и показать ярлыки листов в Excel
Файл программы Microsoft Excel называется КНИГА. А книга, как водится, состоит из листов. Их количество по умолчанию – 3, но создавать можно столько, сколько нужно. Ярлычки листов можно легко переключать одним кликом: они показываются в левом нижнем углу книги и называются стандартно: ЛИСТ1, ЛИСТ2 и т.п. Можно переключать комбинацией горячих клавиш CTRL+ PageUp (PageDown). Но это не всегда удобно. Да и почему их не видно ярлыков? Разберемся с настройками.
Как вернуть ярлычки
Посмотрим, как должна выглядеть книга, чтобы в ней можно было легко переходить с одного листа на другой. Вот они. Это левый нижний угол книги Excel по умолчанию.
Но у кого-то в нижнем левом углу может быть совсем другая картина.
Что делать в таком случае, когда при открытии книги в ней не обнаруживается панели с закладками? Нужно настроить Excel. Ели у вас 2007-я версия программы, путь к нужным настройкам находится в OFFICE (располагается слева сверху, в самом углу книги) – ПАРАМЕТРЫ EXCEL – ДОПОЛНИТЕЛЬНО – ПОКАЗАТЬ ПАРАМЕТРЫ ДЛЯ СЛЕДУЮЩЕЙ КНИГИ. Здесь находим строчку ПОКАЗЫВАТЬ ЯРЛЫЧКИ и ставим галочку. Нажимаем ОК.
После этого листы появятся в нижнем левом углу книги. Если у вас Excel 2003, то путь таков: СЕРВИС – ПАРАМЕТРЫ – ВИД. Для версий 2010-2013: ФАЙЛ – ПАРАМЕТРЫ – ДОПОЛНИТЕЛЬНО.
Как скрыть и отобразить ярлыки листов
Есть в Excel и другая функция. Можно скрывать и отображать листы на имеющейся панели с закладками. Это может пригодиться при необходимости создания большого количества листов, когда для поиска нужного приходится пользоваться стрелочками.
В этом случае временно ненужные листы можно скрыть, чтобы они не занимали место на панели.
Это делается очень просто. Предположим, что нам надо скрыть 10, 11 и 12 лист. Для этого кликаем сначала по десятому листу правой кнопкой и выбираем СКРЫТЬ.
Аналогично поступаем с одиннадцатым и двенадцатым. Получается следующее.
Листы скрыты, но не удалены. Информация на них также сохранена. И если мы попробуем переименовать ЛИСТ13 в ЛИСТ10, программа не даст этого сделать.
Придется придумывать листу другое имя. Или оставить все как есть.
Возвращаются скрытые листы на места аналогичным образом. Правой кнопкой кликаем на любой видимый лист и выбираем ПОКАЗАТЬ. Программа покажет список скрытых листов и предложит выбрать тот, который нужно отобразить. Задать команду одновременно для всех листов нельзя. Нужно делать это поочередно.
Скрывать, а также удалять абсолютно все листы нельзя. Видимым должен остаться хотя бы один.
Как в Excel добавить лист
При создании документа в Microsoft Excel в старых версиях открывается 3 листа, в новых – 1. Между ни.
При создании документа в Microsoft Excel в старых версиях открывается 3 листа, в новых – 1. Между ними можно переключаться и заполнять их независимо друг от друга. Можно создавать связи и решать сложные задачи, передавая между ними данные. Возможность форматирования и программирования ячеек дополнительно расширяют функционал. Если стандартного запаса не хватает, то мы расскажем, как вставить лист в Excel.
Кнопка для добавления листа
Чтобы понять, как в Экселе добавить лист, обратите внимание на нижнее меню. Там отображаются все имеющиеся. Нажмите кнопку «+» в конце списка. Такое добавление расположит новый раздел после предыдущих.
Кнопка «Вставить» на вкладке «Главная»
Теперь о том, как добавить лист в Excel через вставку.
- Перейдите на вкладку «Главная».
- Нажмите кнопку «Вставить».
- Наведите указатель мыши на пункт меню «Лист» и выберите подпункт «Вставить лист».
В Экселе 2010 делаем иначе.
- На главной вкладке меню инструментов с правой стороны найдите кнопку «Вставить».
- Нажмите на стрелочку, находящуюся ниже.
- В выпадающем списке кликните на последнюю строку – «Вставить лист».
Такое добавление расположит новый документ в начале списка.
Комбинация клавиш Shift-F11
Комбинация клавиш «Shift-F11» работает аналогично предыдущему способу. После их нажатия новый раздел книги создастся в начале списка нижнего меню.
Этот способ, как добавить лист в Excel, одинаково работает на всех версиях.
Добавление листа из контекстного меню
Для того чтобы добавить раздел из контекстного меню:
- нажмите правой клавишей мыши на название одного из имеющихся внизу экранов;
- кликните по первому из предложенных пунктов, чтобы создать новый раздел перед выбранным.
В Excel 2010 вы увидите другое меню, поэтому действовать нужно немного по-другому:
- также нажмите правой клавишей мыши на раздел, перед которым хотите разместить новый;
- выберите первый пункт;
- вы увидите окно «Вставка», активируйте «Лист» и нажмите «Ок» в правом нижнем углу.
Новый раздел также будет создан перед выбранным. Этим способом можно решить, как в Экселе добавить лист в конкретное место списка.
Как добавить лист в Excel, если других разделов нет
Случается, что вам нужно вставить новый раздел в книгу, но вы не видите списка. После добавления новых разделов они не появляются. Это означает, что список был скрыт. Для продолжения работы выведем его.
В Excel 2003 понадобится:
- открыть меню «Сервис» и там выбрать пункт «Параметры»;
- перейти во вкладку «Вид» и кликнуть «Показывать ярлычки листов».
- нажмите кнопку «Офис» в верхнем левом углу и «Параметры Excel»;
- в них выберите вкладку «Дополнительно»;
- нажмите «Показывать ярлычки листов».
- нажмите на раздел «Файл»;
- затем «Параметры»;
- перейдите в меню «Дополнительно»;
- нажмите «Показывать ярлычки листов» там.
После того как список снова виден, воспользуйтесь одним из предыдущих способов, как добавить раздел в Excel.
В конце надо сказать, что созданный раздел лучше сразу переименовать. Это поможет ориентироваться между ними, не терять важные и помнить, что и где нужно сделать. Между названиями: «Лист4», «Лист1», «Лист2» ориентироваться сложнее, чем между именами: «Отчет», «Планирование», «Статистика». Не забывайте, что их можно менять местами, перетаскивая мышкой для систематизирования задач.
Пропала панель листов в excel
Решил написать маленькую заметочку на тему «что делать, если в Excel пропала панель с листами»
Пишу заметку по той причине, что если это проблема у меня отняла более 20 минут, то у обычного пользователя они может отнять еще больше времени.
Мне мой друг прислал сводную таблицу из 1с по всему товару, что у него есть на сайте, но как он сказал выгрузка не прошла потому как в документе нету много позиций и в ней только один лист.
В итоге когда мне прислали документ его вид был такой:
как видите панель с листами в приложении Microsoft Office Excel 2010 отсутствует.
Есть стандартная функция в настройках по отключении листов которая находится по след пути:
- Файл
- Параметры
- Дополнительно
- Показать параметры для следующего листа
- Показывать ярлычки листов
Но как видите галочка стоит и листы должны показываться, но в документе их не видно! У обычного пользователя возникнет приступ и он начнет бегать искать сис админа или еще кого что бы выносить мозг либо сложит ручки и скажет что у него ни чего не работает ))))
Отступим от лирики и продолжим решать проблему как отобразить скрытые листы в excel 2010
Дело все в том, что полоса прокрутки налезла и перекрыла панель листов и из-за этого складывается ощущение что пропала панель с листами.
Поэтому делаем следующие:
- Ставим курсор мышки в конец области скролла (белый прямоугольник)
- Двигаем его в правую сторону до, того пока не появится панель с листами
- Проблема решена, листы найдены )))
- и в итоге получаем на выходе:
Но это еще не все )) я сделал видео инструкцию для тех кто считает что тут много букв )))
youtube.com/embed/NZA5ltdh0FU»/>
В итоге мы научились решать след вопросы: как отобразить листы в excel, лист microsoft excel, вставить лист excel, excel список листов, найти листы excel, в эксель пропали листы, в экселе пропали листы, excel не видно листов, эксель показать листы, переходить листам excel, найти лист экселе, лист microsoft office excel, эксель вкладка лист, отображение листов excel, эксель как отобразить листы, не вижу листы excel, листы excel
Как добавить новый лист и присвоить имя в Excel пошаговое руководство
Автор Дмитрий Якушев На чтение 2 мин. Просмотров 1.6k.
Что делает макрос: Самый простой вариант автоматизации — добавить новый лист с присвоением ему конкретного имени.
Как макрос работает
Если вы владеете минимальными знаниями английского, то поймете, как работает этот макрос без подсказок.
Код макроса
Sub DobavitNoviiList() 'Шаг 1: Говорим Excel, что делать, если ошибка On Error GoTo MyError 'Шаг 2: Добавляем лист Sheets.Add 'Шаг 3: Присваиваем имя ActiveSheet.Name = "Отчет"_ WorksheetFunction.Text(Now(),"yyyy") 'Шаг 4: Выходим Exit Sub 'Шаг 5: Если произошла ошибка, сообщение пользователю MyError: MsgBox "Лист с таким именем уже есть!" End Sub
Как работает макрос
- Вы знаете, что если присвоить новому листу имя, которое уже есть, то возникнет ошибка. Таким образом, на шаге 1, макрос говорит Excel немедленно перейти к строке, которая говорит MyError (на шаге 3), если есть ошибка.
- Для создания листа используем метод Add. По умолчанию, лист называется SheetХХ, где хх представляет число листа. Мы даем листу новое имя путем изменения свойства объекта ActiveSheet.Name в этом случае мы именуем рабочий лист «Отчёт и текущий год».
- Как и в рабочих книгах, каждый раз, когда вы добавляете новый лист с помощью VBA, он автоматически становится активным. Именно поэтому мы пишем ActiveSheet.Name.
- Обратите внимание, что на шаге 4 мы выходим из процедуры. Делаем так, чтобы он случайно не показал сообщение об ошибке.
- Данный шаг запускается, если имя нового листа совпадает с уже существующим в книге. С помощью сообщения уведомляем пользователя об этом. Опять же, этот шаг должен быть выполнен только в случае возникновения ошибки.
Как использовать
Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:
- Активируйте редактор Visual Basic, нажав ALT + F11.
- Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
- Выберите Insert➜Module.
- Введите или вставьте код во вновь созданном модуле.
Как сделать сводную таблицу в Excel – пошаговая инструкция для чайников
В этом руководстве вы узнаете, что такое сводная таблица, и найдете подробную инструкцию, как по шагам создавать и использовать её в Excel.
Если вы работаете с большими наборами данных в Excel, то сводная таблица очень удобна для быстрого создания интерактивного представления из множества записей. Помимо прочего, она может автоматически сортировать и фильтровать информацию, подсчитывать итоги, вычислять среднее значение, а также создавать перекрестные таблицы. Это позволяет взглянуть на ваши цифры совершенно с новой стороны.
Важно также и то, что при этом ваши исходные данные не затрагиваются – что бы вы не делали с вашей сводной таблицей. Вы просто выбираете такой способ отображения, который позволит вам увидеть новые закономерности и связи. Ваши показатели будут разделены на группы, а огромный объем информации будет представлен в понятной и доступной для анализа форме.
Что такое сводная таблица?
Это инструмент для изучения и обобщения больших объемов данных, анализа связанных итогов и представления отчетов. Они помогут вам:
- представить большие объемы данных в удобной для пользователя форме.
- группировать информацию по категориям и подкатегориям.
- фильтровать, сортировать и условно форматировать различные сведения, чтобы вы могли сосредоточиться на самом актуальном.
- поменять строки и столбцы местами.
- рассчитать различные виды итогов.
- разворачивать и сворачивать уровни данных, чтобы узнать подробности.
- представить в Интернете сжатые и привлекательные таблицы или печатные отчеты.
Например, у вас множество записей в электронной таблице с цифрами продаж шоколада:
И каждый день сюда добавляются все новые сведения. Одним из возможных способов суммирования этого длинного списка чисел по одному или нескольким условиям является использование формул, как было продемонстрировано в руководствах по функциям СУММЕСЛИ и СУММЕСЛИМН.
Однако, когда вы хотите сравнить несколько показателей по каждому продавцу либо по отдельным товарам, использование сводных таблиц является гораздо более эффективным способом. Ведь при использовании функций вам придется писать много формул с достаточно сложными условиями. А здесь всего за несколько щелчков мыши вы можете получить гибкую и легко настраиваемую форму, которая суммирует ваши цифры как вам необходимо.
Вот посмотрите сами.
Этот скриншот демонстрирует лишь несколько из множества возможных вариантов анализа продаж. И далее мы рассмотрим примеры построения сводных таблиц в Excel 2016, 2013, 2010 и 2007.
Как создать сводную таблицу.
Многие думают, что создание отчетов при помощи сводных таблиц для «чайников» является сложным и трудоемким процессом. Но это не так! Microsoft много лет совершенствовала эту технологию, и в современных версиях Эксель они очень удобны и невероятно быстры.
Фактически, вы можете сделать это всего за пару минут. Для вас – небольшой самоучитель в виде пошаговой инструкции:
1. Организуйте свои исходные данные
Перед созданием сводного отчета организуйте свои данные в строки и столбцы, а затем преобразуйте диапазон данных в таблицу. Для этого выделите все используемые ячейки, перейдите на вкладку меню «Главная» и нажмите «Форматировать как таблицу».
Использование «умной» таблицы в качестве исходных данных дает вам очень хорошее преимущество — ваш диапазон данных становится «динамическим». Это означает, что он будет автоматически расширяться или уменьшаться при добавлении или удалении записей. Поэтому вам не придется беспокоиться о том, что в свод не попала самая свежая информация.
Полезные советы:
- Добавьте уникальные, значимые заголовки в столбцы, они позже превратятся в имена полей.
- Убедитесь, что исходная таблица не содержит пустых строк или столбцов и промежуточных итогов.
- Чтобы упростить работу, вы можете присвоить исходной таблице уникальное имя, введя его в поле «Имя» в верхнем правом углу.
2. Создаем и размещаем макет
Выберите любую ячейку в исходных данных, а затем перейдите на вкладку Вставка > Сводная таблица .
Откроется окно «Создание ….. ». Убедитесь, что в поле Диапазон указан правильный источник данных. Затем выберите местоположение для свода:
- Выбор нового рабочего листа поместит его на новый лист, начиная с ячейки A1.
- Выбор существующего листа разместит в указанном вами месте на существующем листе. В поле «Диапазон» выберите первую ячейку (то есть, верхнюю левую), в которую вы хотите поместить свою таблицу.
Нажатие ОК создает пустой макет без цифр в целевом местоположении, который будет выглядеть примерно так:
Полезные советы:
- В большинстве случаев имеет смысл размещать на отдельном рабочем листе. Это особенно рекомендуется для начинающих.
- Ежели вы берете информацию из другой таблицы или рабочей книги, включите их имена, используя следующий синтаксис: [workbook_name]sheet_name!Range. Например, [Книга1.xlsx] Лист1!$A$1:$E$50. Конечно, вы можете не писать это все руками, а просто выбрать диапазон ячеек в другой книге с помощью мыши.
- Возможно, было бы полезно построить таблицу и диаграмму одновременно. Для этого в Excel 2016 и 2013 перейдите на вкладку «Вставка», щелкните стрелку под кнопкой «Сводная диаграмма», а затем нажмите «Диаграмма и таблица». В версиях 2010 и 2007 щелкните стрелку под сводной таблицей, а затем — Сводная диаграмма.
- Организация макета.
Область, в которой вы работаете с полями макета, называется списком полей. Он расположен в правой части рабочего листа и разделен на заголовок и основной раздел:
- Раздел «Поле» содержит названия показателей, которые вы можете добавить. Они соответствуют именам столбцов исходных данных.
- Раздел «Макет» содержит область «Фильтры», «Столбцы», «Строки» и «Значения». Здесь вы можете расположить в нужном порядке поля.
Изменения, которые вы вносите в этих разделах, немедленно применяются в вашей таблице.
3. Как добавить поле
Чтобы иметь возможность добавить поле в нужную область, установите флажок рядом с его именем.
По умолчанию Microsoft Excel добавляет поля в раздел «Макет» следующим образом:
- Нечисловые добавляются в область Строки;
- Числовые добавляются в область значений;
- Дата и время добавляются в область Столбцы.
4. Как удалить поле из сводной таблицы?
Чтобы удалить любое поле, вы можете выполнить следующее:
- Снимите флажок напротив него, который вы ранее установили.
- Щелкните правой кнопкой мыши поле и выберите «Удалить……».
И еще один простой и наглядный способ удаления поля. Перейдите в макет таблицы, зацепите мышкой ненужный вам элемент и перетащите его за пределы макета. Как только вы вытащите его за рамки, рядом со значком появится хатактерный крестик. Отпускайте кнопку мыши и наблюдайте, как внешний вид вашей таблицы сразу же изменится.
5. Как упорядочить поля?
Вы можете изменить расположение показателей тремя способами:
- Перетащите поле между 4 областями раздела с помощью мыши. В качестве альтернативы щелкните и удерживайте его имя в разделе «Поле», а затем перетащите в нужную область в разделе «Макет». Это приведет к удалению из текущей области и его размещению в новом месте.
- Щелкните правой кнопкой мыши имя в разделе «Поле» и выберите область, в которую вы хотите добавить его:
- Нажмите на поле в разделе «Макет», чтобы выбрать его. Это сразу отобразит доступные параметры:
Все внесенные вами изменения применяются немедленно.
Ну а ежели спохватились, что сделали что-то не так, не забывайте, что есть «волшебная» комбинация клавиш CTRL+Z, которая отменяет сделанные вами изменения (если вы не сохранили их, нажав соответствующую клавишу).
6. Выберите функцию для значений (необязательно)
По умолчанию Microsoft Excel использует функцию «Сумма» для числовых показателей, которые вы помещаете в область «Значения». Когда вы помещаете нечисловые (текст, дата или логическое значение) или пустые значения в эту область, к ним применяется функция «Количество».
Но, конечно, вы можете выбрать другой метод расчёта. Щелкните правой кнопкой мыши поле значения, которое вы хотите изменить, выберите Параметры поля значений и затем — нужную функцию.
Думаю, названия операций говорят сами за себя, и дополнительные пояснения здесь не нужны. В крайнем случае, попробуйте различные варианты сами.
Здесь же вы можете изменить имя его на более приятное и понятное для вас. Ведь оно отображается в таблице, и поэтому должно выглядеть соответственно.
В Excel 2010 и ниже опция «Суммировать значения по» также доступна на ленте — на вкладке «Параметры» в группе «Расчеты».
7. Используем различные вычисления в полях значения (необязательно)
Еще одна полезная функция позволяет представлять значения различными способами, например, отображать итоговые значения в процентах или значениях ранга от наименьшего к наибольшему и наоборот. Полный список вариантов расчета доступен здесь .
Это называется «Дополнительные вычисления». Доступ к ним можно получить, открыв вкладку «Параметры …», как это описано чуть выше.
Подсказка. Функция «Дополнительные вычисления» может оказаться особенно полезной, когда вы добавляете одно и то же поле более одного раза и показываете, как в нашем примере, общий объем продаж и объем продаж в процентах от общего количества одновременно. Согласитесь, обычными формулами делать такую таблицу придется долго. А тут – пара минут работы!
Итак, процесс создания завершен. Теперь пришло время немного поэкспериментировать, чтобы выбрать макет, наиболее подходящий для вашего набора данных.
Работа со списком показателей сводной таблицы
Панель, которая формально называется списком полей, является основным инструментом, который используется для упорядочения таблицы в соответствии с вашими требованиями. Вы можете настроить её по своему вкусу, чтобы удобнее .
Чтобы изменить способ отображения вашей рабочей области, нажмите кнопку «Инструменты» и выберите предпочитаемый макет.
Вы также можете изменить размер панели по горизонтали, перетаскивая разделитель, который отделяет панель от листа.
Закрытие и открытие панели редактирования.
Закрыть список полей в сводной таблице так же просто, как нажать кнопку «Закрыть» (X) в верхнем правом углу панели. А вот как заставить его появиться снова – уже не так очевидно 🙂
Чтобы снова отобразить его, щелкните правой кнопкой мыши в любом месте таблицы и выберите «Показать …» в контекстном меню.
Также можно нажать кнопку «Список полей» на ленте, которая находится на вкладке меню «Анализ».
Воспользуйтесь рекомендациями программы.
Как вы только что видели, создание сводных таблиц — довольно простое дело, даже для «чайников». Однако Microsoft делает еще один шаг вперед и предлагает автоматически сгенерировать отчет, наиболее подходящий для ваших исходных данных. Все, что вам нужно, это 4 щелчка мыши:
- Нажмите любую ячейку в исходном диапазоне ячеек или таблицы.
- На вкладке «Вставка» выберите «Рекомендуемые сводные таблицы». Программа немедленно отобразит несколько макетов, основанных на ваших данных.
- Щелкните на любом макете, чтобы увидеть его предварительный просмотр.
- Если вас устраивает предложение, нажмите кнопку «ОК» и добавьте понравившийся вариант на новый лист.
Как вы видите на скриншоте выше, Эксель смог предложить несколько базовых макетов для моих исходных данных, которые значительно уступают сводным таблицам, которые мы создали вручную несколько минут назад. Конечно, это только мое мнение 🙂
Но при всем при этом, использование рекомендаций — это быстрый способ начать работу, особенно когда у вас много данных и вы не знаете, с чего начать. А затем этот вариант можно легко изменить по вашему вкусу.
Давайте улучшим результат.
Теперь, когда вы знакомы с основами, вы можете перейти к вкладкам «Анализ» и «Конструктор» инструментов в Excel 2016 и 2013 ( вкладки « Параметры» и « Конструктор» в 2010 и 2007). Они появляются, как только вы щелкаете в любом месте таблицы.
Вы также можете получить доступ к параметрам и функциям, доступным для определенного элемента, щелкнув его правой кнопкой мыши (об этом мы уже говорили при создании).
После того, как вы построили таблицу на основе исходных данных, вы, возможно, захотите уточнить ее, чтобы провести более серьёзный анализ.
Чтобы улучшить дизайн, перейдите на вкладку «Конструктор», где вы найдете множество предопределенных стилей. Чтобы получить свой собственный стиль, нажмите кнопку «Создать стиль….» внизу галереи «Стили сводной таблицы».
Чтобы настроить макет определенного поля, щелкните на нем, затем нажмите кнопку «Параметры» на вкладке «Анализ» в Excel 2016 и 2013 (вкладка « Параметры» в 2010 и 2007). Также вы можете щелкнуть правой кнопкой мыши поле и выбрать «Параметры … » в контекстном меню.
На снимке экрана ниже показан новый дизайн и макет.
Я изменил цветовой макет, а также постарался, чтобы таблица была более компактной. Для этого поменяем параметры представления товара. Какие параметры я использовал – вы видите на скриншоте.
Думаю, стало даже лучше. 😊
Как избавиться от заголовков «Метки строк» и «Метки столбцов».
При создании сводной таблицы, Excel применяет Сжатую форму по умолчанию. Этот макет отображает «Метки строк» и «Метки столбцов» в качестве заголовков. Согласитесь, это не очень информативно, особенно для новичков.
Простой способ избавиться от этих нелепых заголовков — перейти с сжатого макета на структурный или табличный. Для этого откройте вкладку «Конструктор», щелкните раскрывающийся список «Макет отчета» и выберите « Показать в форме структуры» или « Показать в табличной форме» .
И вот что мы получим в результате.
Показаны реальные имена, как вы видите на рисунке справа, что имеет гораздо больше смысла.
Другое решение — перейти на вкладку «Анализ», нажать кнопку «Заголовки полей», выключить их. Однако это удалит не только все заголовки, а также выпадающие фильтры и возможность сортировки. А для анализа данных отсутствие фильтров – это чаще всего нехорошо.
Как обновить сводную таблицу.
Хотя отчет связан с исходными данными, вы можете быть удивлены, узнав, что Excel не обновляет его автоматически. Это можно считать небольшим недостатком. Вы можете обновить его, выполнив операцию обновления вручную или же это произойдет автоматически при открытии файла.
Как обновить вручную.
- Нажмите в любом месте на свод.
- На вкладке «Анализ» нажмите кнопку «Обновить» или же нажмите клавиши ALT + F5.
Кроме того, вы можете по щелчку правой кнопки мыши выбрать пункт Обновить из появившегося контекстного меню.
Чтобы обновить все сводные таблицы в файле, нажмите стрелку кнопки «Обновить», а затем — «Обновить все».
Примечание. Если внешний вид вашей сводной таблицы сильно изменяется после обновления, проверьте параметры «Автоматически изменять ширину столбцов при обновлении» и « Сохранить форматирование ячейки при обновлении». Чтобы сделать это, откройте «Параметры сводной таблицы», как это показано на рисунке, и вы найдете там эти флажки.
После запуска обновления вы можете просмотреть статус или отменить его, если вы передумали. Просто нажмите на стрелку кнопки «Обновить», а затем — «Состояние обновления» или «Отменить обновление».
Автоматическое обновление сводной таблицы при открытии файла.
- Откройте вкладку параметров, как это мы только что делали.
- В диалоговом окне «Параметры … » перейдите на вкладку «Данные» и установите флажок «Обновить при открытии файла».
Как переместить на новое место?
Может быть вы захотите переместить своё творение в новую рабочую книгу? Перейдите на вкладку «Анализ», нажмите кнопку «Действия» и затем — «Переместить ….. ». Выберите новый пункт назначения и нажмите ОК.
Как удалить сводную таблицу?
Если вам больше не нужен определенный сводный отчет, вы можете удалить его несколькими способами.
- Если таблица находится на отдельном листе, просто удалите этот лист.
- Ежели она расположена вместе с некоторыми другими данными на листе, выделите всю её с помощью мыши и нажмите клавишу Delete.
- Щелкните в любом месте в сводной таблице, которую хотите удалить, перейдите на вкладку «Анализ» (см. скриншот выше) => группа «Действия», нажмите небольшую стрелку под кнопкой «Выделить», выберите «Вся сводная таблица», а затем нажмите Удалить.
Примечание. Если у вас есть какая-либо диаграмма, построенная на основе свода, то описанная выше процедура удаления превратит ее в стандартную диаграмму, которую больше нельзя будет изменять или обновлять.
Надеемся, что этот самоучитель станет для вас хорошей отправной точкой. Далее нас ждут еще несколько рекомендаций, как работать со сводными таблицами. И спасибо за чтение!
Возможно, вам также будет полезно:
8 способов сравнить две таблицы в Excel и найти разницу — В этом руководстве вы познакомитесь с различными методами сравнения таблиц Excel и определения различий между ними. Узнайте, как просматривать две таблицы рядом, как использовать формулы для создания отчета о различиях, выделить… Как выделить цветом повторяющиеся значения в Excel? — В этом руководстве вы узнаете, как отображать дубликаты в Excel. Мы рассмотрим различные методы затенения дублирующих ячеек, целых строк или последовательных повторений с использованием условного форматирования. Ранее мы исследовали различные… Группировка в сводной таблице Excel – полезные рекомендации. — Возможность группировки данных является одной из самых мощных и полезных функций в сводной таблице. Это позволит обнаружить ранее скрытые взаимосвязи, сделать интересные выводы. При работе со сводными таблицами в Microsoft Excel вы можете…0 0 голос
Рейтинг статьи
просмотров листов в Excel — служба поддержки Office
Как добавить вид листа?
Выберите рабочий лист, на котором вы хотите просмотреть лист, и перейдите к Просмотр > Просмотр листа > Новый . Затем примените нужную сортировку / фильтр. Excel автоматически назовет ваше новое представление: Временное представление . Ваше представление изначально является временным, поэтому, если вы хотите сохранить его, выберите это имя представления в раскрывающемся списке переключателя представления листа, введите новое имя и нажмите Введите .
Примечания:
Если над файлом работают другие люди, вы можете отсортировать или отфильтровать, и мы спросим, хотите ли вы применить эту сортировку или фильтр только для вас или всех. Это еще одна точка входа для просмотра листов.
Когда вы будете готовы отобразить конкретное представление, вы можете выбрать его в раскрывающемся списке переключателя представления листа.
Переключатель вида листа отображает только виды активного листа.
Когда применяется вид листа, рядом с названием вкладки рабочего листа отображается значок глаза. При наведении курсора на него отображается имя активного представления листа.
При первом создании нового представления листа Excel сохранит исходное представление и отобразит его в переключателе представления листа как По умолчанию .Выбор параметра по умолчанию сбросит ваш вид на то место, где оно было при запуске.
Как закрыть или переключиться между видами листа?
Если вы хотите закрыть вид листа и вернуться к виду по умолчанию, перейдите к Вид > Вид листа > Выход . Для переключения между представлениями перейдите к View > Sheet View и выберите вид из раскрывающегося списка переключателя представления листа.
Как удалить вид листа?
Если вы решите, что вам больше не нужен конкретный вид листа, вы можете перейти к Вид > Представления листа > Параметры, выберите нужный вид, затем нажмите Удалить . Вы можете использовать Shift / Ctrl + щелчок левой кнопкой мыши, чтобы выбрать несколько представлений для удаления.
В группе «Просмотр листа» на вкладке «Просмотр» есть диалоговое окно «Параметры».В этом диалоговом окне перечислены все виды листов, связанные с данным листом. У вас также есть варианты Переименовать , Дублировать, или Удалить существующих видов. Чтобы активировать представление из диалогового окна «Параметры», вы можете дважды щелкнуть его в списке представлений или выбрать его, а затем использовать кнопку Переключиться на … .
Почему мне не нужен вид листа? Допустим, вы на собрании и хотите, чтобы все видели, что вы делаете. Представления листа могут сбивать с толку, если вы не все смотрите на одно и то же.
Как выйти из представления? Перейдите на вкладку View > Sheet Views > Exit .
Что происходит, когда активен вид листа, и я закрываю файл и снова открываю? Любой активный вид листа автоматически возвращается к виду по умолчанию.
Доступен ли просмотр листа только мне? Нет, другие люди, которые совместно используют книгу, могут видеть созданные вами представления, если они перейдут на вкладку View и посмотрят на раскрывающийся список переключателя представления листа в группе Sheet Views .
Могу ли я сделать разные виды листа? Вы можете создать до 256 видов листов, но, вероятно, не хотите усложнять.
Для настольных компьютеров более полезно, когда все участники документа используют представление листа, чтобы при совместном редактировании никто не подвергался влиянию сортировки и фильтров друг друга.
Добавить вид листа
Выберите рабочий лист, на котором вы хотите просмотреть лист, затем щелкните Просмотр > Просмотр листа > Новый .
Примените нужную сортировку / фильтр. Excel автоматически называет ваше новое представление Временное представление , чтобы указать, что представление листа еще не сохранено. Чтобы сохранить его, щелкните Temporary View в меню вида листа, введите имя нового вида листа и нажмите Введите .
Примечания:
Если над файлом работают другие люди, вы можете отсортировать или отфильтровать, и Excel спросит, хотите ли вы применить эту сортировку или фильтр только для вас или всех. Это еще одна точка входа для просмотра листов.
Когда вы будете готовы отобразить конкретное представление, вы можете выбрать его в меню просмотра листа.
В меню просмотра листа отображаются только виды активного листа.
Когда применяется вид листа, рядом с названием вкладки рабочего листа появляется значок глаза.При наведении указателя мыши на глаз отображается имя активного представления листа.
При первом создании нового представления листа Excel сохранит исходное представление и отобразит его в переключателе представления листа как По умолчанию . Выбор варианта по умолчанию вернет ваш вид к основному виду документа.
Закрытие или переключение между видами листа
Чтобы закрыть вид листа и вернуться к виду по умолчанию, щелкните Вид > Вид листа > Выход .
Для переключения между видами щелкните Вид > Вид листа , а затем выберите вид в меню просмотра листа.
Удалить вид листа
Если вы решите, что вам больше не нужен конкретный вид листа, щелкните Вид > Представления листа > Параметры , выберите нужное представление и нажмите Удалить .
Параметры просмотра листа
В группе «Просмотр листа» на вкладке «Просмотр» есть диалоговое окно «Параметры». В этом диалоговом окне перечислены все виды листов, связанные с данным листом. Вы также можете Переименовать , Дублировать, или Удалить существующих видов. Чтобы активировать представление из диалогового окна «Параметры», можно дважды щелкнуть значок в списке представлений листа или выбрать его, а затем использовать кнопку Переключиться на . .. .
Часто задаваемые вопросы
Почему мои параметры просмотра листа отображаются серым цветом? Вы можете использовать представления листа только в документе, который хранится в расположении SharePoint или OneDrive.
Доступен ли просмотр листа только мне? Нет, другие люди, которые совместно используют книгу, могут видеть созданные вами представления, если они перейдут на вкладку View и посмотрят меню представления листа в группе Sheet Views .
Работа с листами с использованием Excel VBA (объяснение с примерами)
Помимо ячеек и диапазонов, работа с листами — это еще одна область, о которой вы должны знать, чтобы эффективно использовать VBA в Excel.
Как и любой объект в VBA, рабочие листы имеют различные свойства и методы, связанные с ними, которые вы можете использовать при автоматизации работы с VBA в Excel.
В этом руководстве я подробно рассмотрю «Рабочие листы», а также покажу вам несколько практических примеров.
Итак, приступим.
Все коды, которые я упоминаю в этом руководстве, необходимо поместить в редактор VB. Перейдите в раздел «Где разместить код VBA», чтобы узнать, как это работает.Если вы хотите изучить VBA простым способом, ознакомьтесь с моим курсом Online Excel VBA Training .
Разница между листами и листами в VBA
В VBA у вас есть две коллекции, которые иногда могут немного сбивать с толку.
В книге могут быть как рабочие листы, так и листы диаграмм. В приведенном ниже примере есть три листа и один лист диаграммы.
В Excel VBA:
- Коллекция «Рабочие листы» будет относиться к коллекции всех объектов рабочего листа в книге. В приведенном выше примере коллекция Worksheets будет состоять из трех рабочих листов.
- Коллекция «Таблицы» будет относиться ко всем рабочим таблицам, а также к таблицам диаграмм в книге. В приведенном выше примере у него будет четыре элемента — 3 листа + 1 лист диаграммы.
Если у вас есть рабочая книга, в которой есть только рабочие листы и нет листов диаграмм, тогда коллекции «Рабочие листы» и «Таблицы» будут одинаковыми.
Но когда у вас есть один или несколько листов диаграмм, коллекция «Таблицы» будет больше, чем коллекция «Рабочие листы»
Листы = Рабочие листы + Таблицы диаграмм
Теперь с этим различием я рекомендую быть более конкретным насколько это возможно при написании кода VBA.
Итак, если вам нужно ссылаться только на листы, используйте коллекцию «Рабочие листы», а если вам нужно ссылаться на все листы (включая листы диаграмм), используйте коллекцию «Листы».
В этом уроке я буду использовать только коллекцию «Рабочие листы».
Ссылка на рабочий лист в VBA
Существует множество различных способов ссылки на рабочий лист в VBA.
Понимание того, как обращаться к рабочим листам, поможет вам написать лучший код, особенно когда вы используете циклы в коде VBA.
Использование имени рабочего листа
Самый простой способ сослаться на рабочий лист — использовать его имя.
Например, предположим, что у вас есть рабочая книга с тремя листами — лист 1, лист 2, лист 3.
И вы хотите активировать лист 2.
Это можно сделать с помощью следующего кода: Sub ActivateSheet () Рабочие листы ("Лист2"). Активировать End Sub
Приведенный выше код просит VBA обратиться к Sheet2 в коллекции Worksheets и активировать его.
Поскольку мы используем точное имя листа, вы также можете использовать здесь коллекцию листов. Таким образом, приведенный ниже код также будет делать то же самое.
Sub ActivateSheet () Таблицы ("Лист2"). Активировать End Sub
Использование порядкового номера
Хотя использование имени листа — это простой способ сослаться на рабочий лист, иногда вы можете не знать точное имя рабочего листа.
Например, если вы используете код VBA для добавления нового листа в книгу, и вы не знаете, сколько листов уже существует, вы не знаете имя нового листа.
В этом случае вы можете использовать порядковый номер рабочих листов.
Предположим, у вас есть следующие листы в книге:
Приведенный ниже код активирует Sheet2:
Sub ActivateSheet () Рабочие листы (2) .Активировать End Sub
Обратите внимание, что мы использовали номер индекса 2 в Рабочих листах (2) . Это будет относиться ко второму объекту в наборе листов.
Что произойдет, если использовать 3 в качестве порядкового номера?
Он выберет Sheet3.
Если вам интересно, почему он выбрал Sheet3, поскольку это явно четвертый объект.
Это происходит потому, что лист диаграммы не является частью коллекции листов.
Итак, когда мы используем номера индексов в коллекции Worksheets, они будут ссылаться только на рабочие листы в книге (и игнорировать листы диаграмм).
Напротив, если вы используете Sheets, Sheets (1) будет ссылаться на Sheets1, Sheets (2) будет ссылаться на Sheet2, Sheets (3) будет ссылаться на Chart1, а Sheets (4) будет ссылаться на Sheet3.
Этот метод использования номера индекса полезен, когда вы хотите просмотреть все листы в книге. Вы можете подсчитать количество рабочих листов, а затем просмотреть их, используя этот счетчик (мы увидим, как это сделать позже в этом руководстве).
Примечание: порядковый номер идет слева направо. Итак, если вы переместите Sheet2 влево от Sheet1, тогда Worksheets (1) будет ссылаться на Sheet2.
Использование кодового имени листа
Одним из недостатков использования имени листа (как мы видели в разделе выше) является то, что пользователь может его изменить.
И если имя листа было изменено, ваш код не будет работать, пока вы также не измените имя рабочего листа в коде VBA.
Чтобы решить эту проблему, вы можете использовать кодовое имя рабочего листа (вместо обычного имени, которое мы использовали до сих пор). Кодовое имя может быть назначено в редакторе VB Editor, и оно не меняется при изменении имени листа в области рабочего листа.
Чтобы присвоить листу кодовое имя, выполните следующие действия:
- Щелкните вкладку Разработчик.
- Нажмите кнопку Visual Basic. Это откроет редактор VB.
- Выберите в меню пункт «Просмотр» и щелкните «Окно проекта». Это сделает видимой панель свойств. Если панель «Свойства» уже отображается, пропустите этот шаг.
- Щелкните имя листа в проводнике проекта, который вы хотите переименовать.
- На панели «Свойства» измените имя в поле перед (Имя). Учтите, что в названии не должно быть пробелов.
Вышеупомянутые шаги изменят имя вашего рабочего листа в серверной части VBA.В представлении листа Excel вы можете назвать лист как хотите, но в серверной части он будет реагировать на оба имени — имя листа и имя кода.
На изображении выше имя листа — «SheetName», а кодовое имя — «CodeName». Даже если вы измените имя листа на листе, кодовое имя останется прежним.
Теперь вы можете использовать коллекцию Worksheets для ссылки на рабочий лист или использовать кодовое имя.
Например, обе строки активируют рабочий лист.
Рабочие листы («Имя листа»). Активировать CodeName.Activate
Разница между этими двумя таблицами в том, что если вы измените имя рабочего листа, первое не будет работать. Но вторая строка продолжала бы работать даже с измененным именем. Вторая строка (с использованием CodeName) также короче и проще в использовании.
Обращение к листу в другой книге
Если вы хотите сослаться на лист в другой книге, эта книга должна быть открыта во время выполнения кода, и вам нужно указать имя книги и рабочий лист, вы хотите сослаться на.
Например, если у вас есть книга с именем Примеры и вы хотите активировать Sheet1 в книге примеров, вам необходимо использовать следующий код:
Sub SheetActivate () Рабочие книги ("Examples.xlsx"). Рабочие листы ("Sheet1"). Активировать End Sub
Обратите внимание, что если книга была сохранена, вам необходимо использовать имя файла вместе с расширением. Если вы не знаете, какое имя использовать, обратитесь за помощью в Project Explorer.
В случае, если книга не была сохранена, вам не нужно использовать расширение файла.
Добавление рабочего листа
Приведенный ниже код добавит рабочий лист (как первый рабочий лист, то есть как крайний левый лист на вкладке листа).
Дополнительная таблица () Рабочие листы.Добавить End Sub
Требуется имя по умолчанию Sheet2 (или любое другое число в зависимости от того, сколько листов уже есть).
Если вы хотите, чтобы рабочий лист был добавлен перед определенным листом (скажем, Sheet2), вы можете использовать приведенный ниже код.
Дополнительная таблица () Рабочие листы.Добавить перед: = Рабочие листы ("Лист2") End Sub
Приведенный выше код сообщает VBA о необходимости добавить лист, а затем использует оператор «Before» для указания рабочего листа, перед которым следует вставить новый рабочий лист.
Точно так же вы также можете добавить лист после рабочего листа (скажем, Sheet2), используя следующий код:
Sub AddSheet () Рабочие листы.Добавить после: = Рабочие листы ("Лист2") End Sub
Если вы хотите, чтобы новый лист был добавлен в конец листов, вам нужно сначала узнать, сколько листов там.Следующий код сначала подсчитывает количество листов, и добавляет новый лист после последнего листа (на который мы ссылаемся, используя порядковый номер).
Дополнительная таблица () Dim SheetCount как целое число SheetCount = Worksheets.Count Рабочие листы.Добавить после: = Рабочие листы (SheetCount) End Sub
Удаление рабочего листа
Приведенный ниже код удалит активный лист из книги.
Sub DeleteSheet () ActiveSheet.Delete End Sub
В приведенном выше коде будет отображаться предупреждение перед удалением рабочего листа.
Если вы не хотите видеть предупреждение, используйте следующий код:
Sub DeleteSheet () Application.DisplayAlerts = False ActiveSheet.Delete Application.DisplayAlerts = True End Sub
Если для Application.DisplayAlerts задано значение False, предупреждение не будет отображаться. Если вы его используете, не забудьте вернуть его в True в конце кода.
Помните, что вы не можете отменить это удаление, поэтому используйте приведенный выше код, когда абсолютно уверены.
Если вы хотите удалить определенный лист, вы можете сделать это с помощью следующего кода:
Sub DeleteSheet () Рабочие листы ("Лист2"). Удалить End Sub
Вы также можете использовать кодовое имя листа, чтобы удалить его.
Sub DeleteSheet () Лист5. Удалить End Sub
Переименование рабочих листов
Вы можете изменить свойство name рабочего листа, чтобы изменить его имя.
Следующий код изменит имя Sheet1 на «Summary».
Sub RenameSheet () Рабочие листы ("Sheet1"). Name = "Summary" End Sub
Вы можете объединить это с методом добавления листа, чтобы получить набор листов с определенными именами.
Например, если вы хотите вставить четыре листа с именами 2018 Q1, 2018 Q2, 2018 Q3 и 2018 Q4, вы можете использовать приведенный ниже код.
Sub RenameSheet () Тусклые графы как целые числа Countsheets = Worksheets.Count Для i = от 1 до 4 Рабочие листы.Добавить после: = Рабочие листы (Таблицы + i - 1) Рабочие листы (Countsheets + i).Name = "2018 Q" & i Далее я End Sub
В приведенном выше коде мы сначала подсчитываем количество листов, а затем используем цикл For Next для вставки новых листов в конце. По мере добавления листа код также переименовывает его.
Назначение объекта рабочего листа переменной
При работе с листами вы можете назначить рабочий лист переменной объекта, а затем использовать эту переменную вместо ссылок на лист.
Например, если вы хотите добавить префикс года ко всем рабочим листам, вместо подсчета листов и выполнения цикла много раз, вы можете использовать объектную переменную.
Вот код, который добавит 2018 в качестве префикса ко всем именам рабочего листа.
Sub RenameSheet () Dim Ws как рабочий лист Для каждой буквы W в листах Ws.Name = "2018 -" & Ws.Name Следующий Ws End Sub
В приведенном выше коде в качестве типа рабочего листа объявляется переменная Ws (с использованием строки «Dim Ws As Worksheet»).
Теперь нам не нужно подсчитывать количество листов, чтобы их просмотреть. Вместо этого мы можем использовать цикл «Для каждой буквы W в листах». Это позволит нам просмотреть все листы в коллекции листов.Неважно, 2 листа или 20 листов.
Хотя приведенный выше код позволяет нам перебирать все листы, вы также можете назначить конкретный лист переменной.
В приведенном ниже коде мы назначаем переменную Ws для Sheet2 и используем ее для доступа ко всем свойствам Sheet2.
Sub RenameSheet () Dim Ws как рабочий лист Установить Ws = Worksheets ("Sheet2") Ws.Name = "Сводка" Ws.Protect End Sub
После того, как вы установили ссылку на лист для переменной объекта (с помощью оператора SET), этот объект можно использовать вместо ссылки на лист.Это может быть полезно, если у вас длинный сложный код и вы хотите изменить ссылку. Вместо того, чтобы вносить изменения везде, вы можете просто внести изменения в операторе SET.
Обратите внимание, что код объявляет объект Ws как переменную типа Worksheet (используя строку Dim Ws как Worksheet).
Скрыть рабочие листы с помощью VBA (скрытый + очень скрытый)
Скрыть и отобразить рабочие листы в Excel — это простая задача.
Вы можете скрыть рабочий лист, и пользователь не увидит его, когда он / она откроет книгу.Однако они могут легко показать рабочий лист, щелкнув правой кнопкой мыши на любой вкладке листа.
Но что, если вы не хотите, чтобы они могли отображать лист (ы).
Это можно сделать с помощью VBA.
Приведенный ниже код скроет все рабочие листы в книге (кроме активного листа), так что вы не сможете отобразить их, щелкнув правой кнопкой мыши имя листа.
Sub HideAllExcetActiveSheet () Dim Ws как рабочий лист Для каждой W в ThisWorkbook.Worksheets Если Ws.Имя <> ActiveSheet.Name Тогда Ws.Visible = xlSheetVeryHidden Следующий Ws End Sub
В приведенном выше коде свойство Ws.Visible изменено на xlSheetVeryHidden .
- Если для свойства Visible задано значение xlSheetVisible, лист отображается в области рабочего листа (как вкладки рабочего листа).
- Если для свойства Visible задано значение xlSheetHidden, лист скрыт, но пользователь может отобразить его, щелкнув правой кнопкой мыши на любой вкладке листа.
- Если для свойства Visible задано значение xlSheetVeryHidden, лист скрывается и не может быть отображен из области рабочего листа.Вам нужно использовать код VBA или окно свойств, чтобы отобразить его.
Если вы хотите просто скрыть листы, которые можно легко отобразить, используйте приведенный ниже код:
Sub HideAllExceptActiveSheet () Dim Ws как рабочий лист Для каждой W в ThisWorkbook.Worksheets Если Ws.Name <> ActiveSheet.Name, то Ws.Visible = xlSheetHidden Следующий Ws End Sub
Приведенный ниже код покажет все рабочие листы (как скрытые, так и очень скрытые).
Sub UnhideAllWoksheets () Dim Ws как рабочий лист Для каждого W в ThisWorkbook.Рабочие листы Ws.Visible = xlSheetVisible Следующий Ws End Sub
Связанная статья : Показать все листы в Excel (за один раз)
Скрыть листы на основе текста в нем
Предположим, у вас есть несколько листов с названиями разных отделов или лет, и вы хотите скрыть все листы, кроме тех, на которых указан 2018 год.
Это можно сделать с помощью функции VBA INSTR.
Приведенный ниже код скроет все листы, кроме тех, на которых есть текст 2018.
Sub HideWithMatchingText () Dim Ws как рабочий лист Для каждой буквы W в листах Если InStr (1, Ws.Name, «2018», vbBinaryCompare) = 0, то Ws.Visible = xlSheetHidden Конец, если Следующий Ws End Sub
В приведенном выше коде функция INSTR возвращает позицию символа, в которой она находит соответствующую строку. Если соответствующая строка не найдена, возвращается 0.
Приведенный выше код проверяет, есть ли в имени текст 2018. Если это так, ничего не происходит, иначе рабочий лист скрыт.
Вы можете пойти дальше, поместив текст в ячейку и используя эту ячейку в коде. Это позволит вам иметь значение в ячейке, а затем, когда вы запустите макрос, все листы, кроме листа с совпадающим текстом в нем, останутся видимыми (вместе с листами, на которых вы вводите значение в ячейка).
Сортировка рабочих листов в алфавитном порядке
Используя VBA, вы можете быстро отсортировать рабочие листы по их именам.
Например, если у вас есть рабочая книга с листами для разных отделов или лет, вы можете использовать приведенный ниже код, чтобы быстро отсортировать эти листы в порядке возрастания.
Sub SortSheetsTabName () Application.ScreenUpdating = False Dim ShCount как целое число, i как целое, j как целое ShCount = Sheets.Count Для i = 1 To ShCount - 1 Для j = i + 1 To ShCount Если Sheets (j) .NameОбратите внимание, что этот код хорошо работает с текстовыми именами, а также в большинстве случаев с годами и числами.Но это может дать неправильные результаты, если у вас есть имена листов 1,2,11. Он отсортирует и выдаст вам последовательность 1, 11, 2. Это связано с тем, что сравнение выполняется как текст и считает, что 2 больше 11.
Защитить / снять защиту со всех листов за один раз
Если у вас много рабочих листов в книге, и вы хотите защитить все листы, вы можете использовать приведенный ниже код VBA.
Позволяет указать пароль внутри кода. Этот пароль понадобится вам, чтобы снять защиту с листа.
Sub ProtectAllSheets () Dim ws как рабочий лист Тусклый пароль как строка password = "Test123" 'замените Test123 желаемым паролем Для каждого ws в листах ws.Protect пароль: = пароль Следующий ws End SubСледующий код снимет защиту со всех листов за один раз.
Sub ProtectAllSheets () Dim ws как рабочий лист Тусклый пароль в виде строки password = "Test123" 'замените Test123 на пароль, который вы использовали при защите Для каждого ws в листах ws.Снять защиту пароль: = пароль Следующий ws End SubСоздание оглавления всех листов (с гиперссылками)
Если у вас есть набор рабочих листов в книге, и вы хотите быстро вставить сводный лист со ссылками на все листы, вы можете использовать под кодом.
Sub AddIndexSheet () Рабочие листы.Добавить ActiveSheet.Name = "Индекс" Для i = 2 To Worksheets.Count ActiveSheet.Hyperlinks.Add Anchor: = Cells (i - 1, 1), _ Адрес: = "", Дополнительный адрес: = Рабочие листы (i).Имя & "! A1", _ TextToDisplay: = Рабочие листы (i). Имя Далее я End SubПриведенный выше код вставляет новый рабочий лист и называет его Index.
Затем он перебирает все рабочие листы и создает гиперссылки для всех рабочих листов на индексном листе.
Куда поместить код VBA
Хотите знать, где находится код VBA в вашей книге Excel?
Excel имеет серверную часть VBA, называемую редактором VBA. Вам необходимо скопировать и вставить код в окно кода модуля VB Editor.
Вот шаги, чтобы сделать это:
- Перейдите на вкладку Разработчик.
- Щелкните опцию Visual Basic. Это откроет редактор VB в бэкэнде.
- На панели Project Explorer в редакторе VB щелкните правой кнопкой мыши любой объект книги, в которую вы хотите вставить код. Если вы не видите Project Explorer, перейдите на вкладку View и нажмите Project Explorer.
- Перейдите во вкладку "Вставить" и щелкните "Модуль". Это вставит объект модуля для вашей книги.
- Скопируйте и вставьте код в окно модуля.
Вам также могут понравиться следующие учебные пособия по Excel VBA:
Учебное пособие по рабочим листам Excel: Активные листы VBA и рабочие листы
Сегодня мы узнаем о таблицах VBA. Мы рассмотрим все неприятности, например, VBA Activesheet и его сравнение с обычными рабочими листами , как Select Worksheets , как Activate Worksheets , Selecting vs Activating Worksheets … и все остальное, что вам нужно знать о рабочем листе VBA в целом.
ThisWorkbook против ActiveWorkbook
Некоторые рабочие листы Excel Начнем с основ. Прежде чем мы начнем, я хочу подчеркнуть и напомнить разницу между ActiveWorkbooks и ThisWorksbooks. Вкратце:
- ThisWorkbook - относится к книге, в которой запущен макрос VBA
- ActiveWorkbook - относится к книге, которая находится в самом верхнем окне Excel
Очень важно понимать эту разницу, и я рекомендую вам сначала прочитать мой пост по этой теме.
Иерархия объектов Excel VBA
Во-вторых, имеет смысл напомнить иерархию объектов Excel.
Наверху, корень , у нас , наше приложение Excel . Приложение Excel представляет собой весь процесс Excel. Далее по дереву у нас есть наших рабочих книг . Каждое приложение содержит коллекцию книг. Заглянув в одну рабочую книгу, мы заметим, что она содержит коллекций рабочих листов . С другой стороны, листы могут определять диапазоны (не то же самое, что отдельные ячейки).Используя диапазон, мы можем получить доступ к его значениям ячеек или формулам .
Доступ к рабочим листам VBA
Теперь, когда это у нас есть, давайте рассмотрим различные способы доступа к рабочим листам в VBA:
Рабочие листы ActiveWorkbook VBA
Сборники листов и рабочих листов
листов в ActiveWorkbook :
Dim ws как рабочий лист, wsCollection как листы Set wsCollection = Sheets 'Получить всю коллекцию рабочих листов Set ws = Sheets (1) 'Получить первый рабочий лист в ActiveWorkbook Set ws = Sheets ("Sheet1") 'Получить рабочий лист с именем "Sheet1" в ActiveWorkbookТочно так же мы можем использовать рабочих листов вместо листов.
Dim ws как рабочий лист, wsCollection как листы Set wsCollection = Worksheets 'Получить всю коллекцию рабочих листов Set ws = Worksheets (1) 'Получить первый рабочий лист в ActiveWorkbook Set ws = Worksheets ("Sheet1") 'Получить рабочий лист с именем "Sheet1" в ActiveWorkbookРабочие листы ThisWorkbook, VBA
Сборники листов и рабочих листов
листов в ThisWorkbook :
Dim ws как рабочий лист, wsCollection как листы Set wsCollection = Sheets 'Получить всю коллекцию рабочих листов Установите ws = ThisWorkbook.Таблицы (1) 'Получите первый рабочий лист в ThisWorkbook Set ws = ThisWorkbook.Sheets ("Sheet1") 'Получить рабочий лист с именем "Sheet1" в ThisWorkbookТочно так же мы можем использовать рабочих листов вместо листов.
Dim ws как рабочий лист, wsCollection как листы Set wsCollection = Worksheets 'Получить всю коллекцию рабочих листов Set ws = ThisWorkbook.Worksheets (1) 'Получить первый рабочий лист в ActiveWorkbook Set ws = ThisWorkbook.Worksheets ("Sheet1") 'Получить рабочий лист с именем "Sheet1" в ThisWorkbookИмя рабочего листа VBA и имя Excel
Говоря о рабочих листах в ThisWorkbook , имя VBA рабочего листа не совпадает с именем Excel рабочего листа.Давайте разбираться в этом по-другому. Справа у нас есть экран из примера Workbook. Строка VBAName - это имя VBA нашего рабочего листа , с другой стороны, строка Excel Name - это наше имя Excel. Вы можете использовать оба имени для обозначения одного и того же рабочего листа, но по-разному.
Использование имени рабочего листа VBA
Worksheet VBA Name Мы можем ссылаться на рабочий лист VBA напрямую по его имени VBA - просто набрав его. Это очень удобно и полезно . Это связано с тем, что имя VBA не может быть изменено пользователем по ошибке с уровня Excel (не VBE). Следовательно, какое бы имя пользователь ни дал на уровне рабочей книги вашему рабочему листу, его имя VBA остается прежним.
Использование имени листа в Excel
Использование таблицы Excel из VBA не рекомендуется . Ниже я имею в виду рабочий лист, который я назвал Имя Excel в моем примере выше.
Dim ws как рабочий лист Set ws = Worksheets ("Имя Excel") 'Получить рабочий лист с именем "Sheet1" в ActiveWorkbookВы не замечаете, что по сравнению с получением рабочего листа по его имени VBA, при использовании объекта Worksheets или Sheets по умолчанию вы попадаете с указанным рабочим листом, но из ActiveWorkbook. Обычно это не имеет большого значения. Но я подчеркиваю, что это просто еще одно место, где можно совершить распространенную ошибку. См. Обе версии ниже :
Dim ws как рабочий лист '--- Лист по имени Excel в ActiveWorkbook --- Set ws = Worksheets ("Excel Name") 'Получить рабочий лист с именем "Sheet1" в ActiveWorkbook Установите ws = ActiveWorkbook.Рабочие листы («Имя Excel») 'Получить рабочий лист с именем «Лист1» в ActiveWorkbook '--- Лист по имени Excel в ThisWorkbook --- Set ws = ThisWorkbook.Worksheets ("Имя Excel") 'Получить рабочий лист с именем "Sheet1" в ActiveWorkbookТаблица ActiveSheet VBA
Как и в случае с Active и ThisWorkbook, вам нужно сначала понять разницу между выбором рабочего листа и его активацией .
Выбранный и активированный рабочий лист , различия:
- Выбранный рабочий лист - один или несколько рабочих листов, которые были выбраны в окне Excel.Каждая рабочая книга имеет свой собственный набор выбранных рабочих листов
- ActiveWorksheet - текущий рабочий лист, который вы просматриваете и с которым работаете. Единственный самый верхний рабочий лист во всех рабочих книгах приложений
Из приведенного выше определения вы видите, что может быть больше, чем 1 выбранный рабочий лист, в то время как только 1 активный лист. На самом деле это совершенно разные вещи. Давайте рассмотрим это на нескольких примерах:
Пример 1: Описание ActiveSheet
Допустим, у нас открыто 2 Рабочие книги.Один - Book1.xlsm, а другой - Book2.xlsm.
Позволяет открыть VBE в Book1.xlsm . Мы добавим следующий фрагмент кода:
Sub TestActiveSheet () MsgBox ActiveSheet.Name Конец подпискиТеперь активируем Book2.xlsm . Переименуйте любой рабочий лист, например на MyActiveWorksheet . Затем перейдите на ленту Developer , выберите Macros и запустите Books1.xlsm! TestActiveSheet . Что случилось? Вероятно, у вас получилось что-то вроде этого:
Хотя вы запускали макрос из Book1.xlsm, VBA всегда рассматривает самый верхний лист как ActiveSheet.Пример 2: Объяснение выбранной и ActiveSheet
Рассмотрим тот же пример. Откройте Book1.xlsm и добавьте в VBE следующий код:
Sub SelectedVSActive () Dim res как строка, ws как рабочий лист res = "Выбранные листы:" & vbNewLine Для каждого ws в ActiveWindow.SelectedSheets res = res & ws.Name & vbNewLine Следующий ws MsgBox res & vbNewLine & "ActiveSheet:" & vbNewLine & ActiveSheet.имя Конец подпискиТеперь сделайте следующее:
- Активировать книгу Book2.xlsm
- Выберите количество рабочих листов (не менее 2)
- Запустить Book1.xlsm! SelectedVSActive макрос
Что происходит? У вас должно получиться что-то вроде этого:
Вы видите, что:
- Активным листом считается только самый верхний рабочий лист
- ActiveSheet ВСЕГДА рассматривается как выбранный рабочий лист в ActiveWindow (эта последняя часть важна)
Что произойдет, если вы измените ActiveWindow на e.г. Окна (2) ? Вы увидите другой набор избранных рабочих листов. Почему? Потому что во всех книгах есть избранные рабочие листы. Надеюсь, вы заметите разницу.
Активация листов VBA
Активировать рабочий лист в VBA очень просто. Вы делаете это с помощью свойства «Активировать» рабочего листа. Как активировать любой рабочий лист с помощью VBA?
Dim ws как рабочий лист '... Установить ws на какой-нибудь рабочий лист ws.ActivateАктивировать примеры рабочего листа
Несколько примеров ниже:
Листы (1).Activate 'Активировать первый рабочий лист в ActiveWorkbook Sheet1.Activate 'Активировать Sheet1 в ThisWorkbook Рабочие листы ("MyNamedWorksheet"). Активировать 'Активировать Excel с именем Рабочий лист в ActiveWorkbookВыбор листов VBA
Выбор рабочих листов немного сложнее, так как мы можем выбрать один или несколько рабочих листов.
Выбор одного рабочего листа VBA
Выбрать один лист VBA просто. Просто используйте свойство Select рабочего листа.
Dim ws как рабочий лист '... Установить ws на какой-нибудь рабочий лист ws.SelectВыбор одного примера рабочего листа
Несколько примеров ниже:
Таблицы (1) .Выберите 'Выбрать первый рабочий лист в ActiveWorkbook Sheet1. Выберите 'Select Sheet1 в ThisWorkbook Рабочие листы («MyNamedWorksheet»). Выберите «Выберите Excel с именем Рабочий лист в ActiveWorkbook.Выбор нескольких листов VBA
Выбор более 1 рабочего листа немного сложнее, поскольку нам нужно использовать функцию массива VBA :
Листы (Массив (1, 2)).Выберите 'Выбрать первый и второй лист в ActiveWorkbook. Листы (Array ("Named1", "Named2")). Выберите "Выберите 2 именованных листа в ActiveWorkbookЭто не самый элегантный способ сделать это. К счастью, у функции Select есть аргумент Replace . Установка значения false будет означать, что ранее выбранный объект не должен быть отменен. Таким образом, мы можем расширить наш выбор следующим образом:
Листы (1) .Выбрать Таблицы вызовов (2) .Выбрать (Ложь) Таблицы вызовов (3).Выбрать (Ложь)Это выберет первые три рабочих листа в нашей ActiveWorkbook.
Удаление листов VBA
Чтобы удалить рабочий лист VBA, нам необходимо выключить приложение Application.DisplayAlerts
Application.DisplayAlerts = False Листы (1) .Удалить Application.DisplayAlerts = TrueВы можете удалить несколько рабочих листов аналогично тому, как вы можете сделать несколько рабочих листов. Выберите:
Заявка.DisplayAlerts = False Листы (Массив (1, 2)). Удалить Application.DisplayAlerts = TrueКопирование листов VBA
Вы можете копировать рабочие листы из рабочей книги или из других открытых рабочих книг.
'Скопируйте Sheet1 и вставьте перед Sheet2 Рабочие листы ("Лист1"). Копировать перед: = Листы ("Лист2") 'Скопируйте Sheet1 и вставьте перед Sheet2 в Workbook Book1.xlsm Рабочие листы ("Sheet1"). Копировать перед: = Workbooks ("Book1.xlsm"). Sheets ("Sheet2")Перемещение листов VBA
Вы можете перемещать листы внутри книги или из других открытых книг.
'Переместить Sheet1 и вставить перед Sheet2 Листы ("Лист1"). Переместить до: = Листы ("Лист2") 'Переместить Sheet1 и вставить перед Sheet2 в Workbook Book1.xlsm Рабочие листы ("Sheet1"). Переместить до: = Workbooks ("Book1.xlsm"). Sheets ("Sheet2")Другие свойства листов VBA
Ниже приведены другие свойства рабочего листа VBA, о которых стоит упомянуть:
Свойство рабочего листа ОписаниеExampleCalculate Вычисляет все грязные формулы на текущем листе
Dim ws как рабочий лист '...Установить ws ws.CalculateИмя Получить или установить имя Excel для рабочего листа
Dim ws как рабочий лист '... Установить ws Debug.Print ws.Name 'Распечатать имя листа Excel ws.Name = "New name" 'Установить новое имя для рабочего листавидимый
Показать, скрыть или сделать рабочий лист очень скрытым. Возможные значения:
- xlSheetVisible
- xlSheetVeryHidden
- xlSheetHidden
Dim ws как рабочий лист '...Установить ws ws.Visible = xlSheetHidden 'Сделать рабочий лист ws скрытымЧтобы узнать больше, прочтите Показать все листы в Excel / Показать все листы в Excel с помощью VBA.
УчебникOpenpyxl - чтение, запись файлов Excel xlsx на Python
последнее изменение 6 июля 2020 г.
В этом руководстве мы покажем, как работать с файлами Excel в Python, используя библиотека openpyxl.
Openpyxl
openpyxl - это библиотека Python для чтения и записи файлов Excel 2010 xlsx / xlsm / xltx / xltm.
Excel xlsx
В этом руководстве мы работаем с файлами xlsx. XLSX - это расширение файла для открытый формат файла электронной таблицы XML, используемый Microsoft Excel. Файлы xlsm поддерживают макросы. Формат xls - это закрытый двоичный формат, а xlsx основан на формате Office Open XML.
$ sudo pip3 установить openpyxlМы устанавливаем
openpyxl
с помощью инструментаpip3
.Openpyxl создать новый файл
В первом примере мы создаем новый файл xlsx с
openpyxl
.write_xlsx.py
#! / usr / bin / env python из openpyxl import Workbook время импорта book = Рабочая тетрадь () sheet = book.active лист ['A1'] = 56 лист ['A2'] = 43 now = time.strftime ("% x") лист ['A3'] = сейчас book.save ("sample.xlsx")В этом примере мы создаем новый файл xlsx. Записываем данные в три ячейки.
из openpyxl import WorkbookИз модуля
openpyxl
мы импортируем классWorkbook
. Книга - это контейнер для всех остальных частей документа.book = Рабочая тетрадь ()Создаем новую рабочую тетрадь. Книга всегда создается как минимум с одним листом.
sheet = book.activeПолучаем ссылку на активный лист.
лист ['A1'] = 56 лист ['A2'] = 43Записываем числовые данные в ячейки A1 и A2.
now = time.strftime ("% x") лист ['A3'] = сейчасЗаписываем текущую дату в ячейку A3.
book.save ("sample.xlsx")Записываем содержимое в образец
Рис.: Новый файл.xlsx
с методsave
.Openpyxl записывает в ячейку
Есть два основных способа записи в ячейку: с помощью ключа рабочий лист, такой как A1 или D3, или с использованием обозначения строк и столбцов с помощью метода
ячейки
.write2cell.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () sheet = book.active лист ['A1'] = 1 sheet.cell (строка = 2, столбец = 2) .value = 2 book.save ('write2cell.xlsx ')В этом примере мы записываем два значения в две ячейки.
лист ['A1'] = 1Здесь мы присваиваем числовое значение ячейке A1.
sheet.cell (строка = 2, столбец = 2) .value = 2В этой строке мы пишем в ячейку B2 с обозначением строки и столбца.
Openpyxl добавить значения
С помощью метода
append
мы можем добавить группу значения внизу текущего листа.appending_values.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () sheet = book.active строки = ( (88, 46, 57), (89, 38, 12), (23, 59, 78), (56, 21, 98), (24, 18, 43), (34, 15, 67) ) для ряда в ряды: sheet.append (строка) book.save ('добавление.xlsx')В этом примере мы добавляем три столбца данных в текущий лист.
строки = ( (88, 46, 57), (89, 38, 12), (23, 59, 78), (56, 21, 98), (24, 18, 43), (34, 15, 67) )Данные хранятся в виде кортежей.
для ряда в ряды: sheet.append (строка)Перебираем контейнер построчно и вставляем строка данных с методом добавления
.
Openpyxl читать ячейку
В следующем примере мы читаем ранее записанные данные из файла
sample.xlsx
.read_cells.py
#! / usr / bin / env python импортировать openpyxl книга = openpyxl.load_workbook ('sample.xlsx') sheet = book.active a1 = лист ['A1'] a2 = лист ['A2'] а3 = лист.ячейка (строка = 3, столбец = 1) печать (a1.value) печать (a2.value) печать (a3.value)В примере загружается существующий файл xlsx и читаются три ячейки.
книга = openpyxl.load_workbook ('sample.xlsx')Файл открывается с помощью метода
load_workbook
.a1 = лист ['A1'] a2 = лист ['A2'] a3 = sheet.cell (строка = 3, столбец = 1)Мы читаем содержимое ячеек A1, A2 и A3. В третьей строке мы используем метод
ячейки
, чтобы получить значение ячейки A3.$ ./read_cells.py 56 43 26.10.16Это результат примера.
Openpyxl читает несколько ячеек
У нас есть следующая таблица данных:
Рисунок: ПозицииМы читаем данные с помощью оператора диапазона.
read_cells2.py
#! / usr / bin / env python импортировать openpyxl книга = openpyxl.load_workbook ('items.xlsx') sheet = book.active ячейки = лист ['A1': 'B6'] для c1, c2 в ячейках: print ("{0: 8} {1: 8}". format (c1.значение, c2.value))В этом примере мы читаем данные из двух столбцов, используя операцию диапазона.
ячейки = лист ['A1': 'B6']В этой строке мы читаем данные из ячеек A1 - B6.
для c1, c2 в ячейках: print ("{0: 8} {1: 8}". формат (c1.value, c2.value))Функция
format ()
используется для аккуратного вывода данных. на консоли.$ ./read_cells2.py Количество предметов монеты 23 стулья 3 карандаши 5 бутылки 8 книги 30Это результат работы программы.
Openpyxl итерация по строкам
Метод
iter_rows
возвращает ячейки из лист в виде строк.iterating_by_rows.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () sheet = book.active строки = ( (88, 46, 57), (89, 38, 12), (23, 59, 78), (56, 21, 98), (24, 18, 43), (34, 15, 67) ) для ряда в ряды: sheet.append (строка) для строки в sheet.iter_rows (min_row = 1, min_col = 1, max_row = 6, max_col = 3): для ячейки в строке: печать (ячейка.значение, конец = "") Распечатать() book.save ('iterbyrows.xlsx')Пример перебирает данные строка за строкой.
для строки в sheet.iter_rows (min_row = 1, min_col = 1, max_row = 6, max_col = 3):Мы указываем границы итерации.
$ ./iterating_by_rows.py 88 46 57 89 38 12 23 59 78 56 21 98 24 18 43 34 15 67Это результат примера.
Openpyxl итерация по столбцам
Метод
iter_cols
возвращает ячейки из лист в виде столбцов.iterating_by_columns.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () sheet = book.active строки = ( (88, 46, 57), (89, 38, 12), (23, 59, 78), (56, 21, 98), (24, 18, 43), (34, 15, 67) ) для ряда в ряды: sheet.append (строка) для строки в sheet.iter_cols (min_row = 1, min_col = 1, max_row = 6, max_col = 3): для ячейки в строке: печать (cell.value, end = "") Распечатать() book.save ('iterbycols.xlsx')В примере выполняется итерация по столбцу данных по столбцу.
$ ./iterating_by_columns.py 88 89 23 56 24 34 46 38 59 21 18 15 57 12 78 98 43 67Это результат примера.
Статистика
В следующем примере нам нужно создать файл xlsx, содержащий числа. Например, мы создали 25 рядов чисел в 10 столбцов с функцией
RANDBETWEEN ()
.mystats.py
#! / usr / bin / env python импортировать openpyxl импортировать статистику как статистику книга = openpyxl.load_workbook ('numbers.xlsx', data_only = True) sheet = book.active rows = sheet.rows values = [] для ряда в ряды: для ячейки в строке: values.append (ячейка.значение) print ("Количество значений: {0}". format (len (values))) print ("Сумма значений: {0}". format (sum (values))) print ("Минимальное значение: {0}". format (min (values))) print ("Максимальное значение: {0}". format (max (values))) print ("Среднее: {0}". формат (stats.mean (значения))) print ("Медиана: {0}". формат (stats.median (значения))) print ("Стандартное отклонение: {0}". format (stats.stdev (значения))) print ("Отклонение: {0}". формат (статистика. отклонение (значения)))В этом примере мы считываем все значения из таблицы и вычисляем некоторую базовую статистику.
импортировать статистику как статистикуМодуль статистики
Импортирован модуль
для обеспечения некоторых статистических функций, например, медиана и дисперсия.book = openpyxl.load_workbook ('numbers.xlsx', data_only = True)Используя опцию
data_only
, мы получаем значения из ячеек, а не из формулы.rows = sheet.rowsПолучаем все непустые ряды ячеек.
для ряда в ряды: для ячейки в строке: values.append (ячейка.значение)В двух циклах for формируем список целочисленных значений из ячеек.
print ("Количество значений: {0}". format (len (values))) print ("Сумма значений: {0}". format (sum (values))) print ("Минимальное значение: {0}". format (min (values))) print ("Максимальное значение: {0}". format (max (values))) print ("Среднее: {0}".формат (stats.mean (значения))) print ("Медиана: {0}". формат (stats.median (значения))) print ("Стандартное отклонение: {0}". format (stats.stdev (values))) print ("Отклонение: {0}". формат (статистика. отклонение (значения)))Мы вычисляем и печатаем математическую статистику значений. Некоторые из функции встроены, остальные импортируются со статистикой
модуль.
$ ./mystats.py Количество значений: 312 Сумма значений: 15877 Минимальное значение: 0 Максимальное значение: 100 Среднее значение: 50,88782051282051 Медиана: 54.0 Стандартное отклонение: 28,459203819700967 Отклонение: 809.9262820512821Это пример вывода.
Openpyxl фильтрация и сортировка данных
У листа есть атрибут
auto_filter
, который позволяет для установки условий фильтрации и сортировки.Обратите внимание, что Openpyxl устанавливает условия, но мы должны их применять. внутри приложения Электронная таблица.
filter_sort.py
#! / usr / bin / env python из openpyxl import Workbook wb = Книга () лист = wb.активный данные = [ ['Элемент', 'Цвет'], ['ручка', 'коричневый'], ['книга', 'черный'], ['тарелка', 'белый'], ['стул', 'коричневый'], ['монета', 'золото'], ['кровать', 'коричневый'], ['блокнот', 'белый'], ] для r в данных: sheet.append (r) sheet.auto_filter.ref = 'A1: B8' sheet.auto_filter.add_filter_column (1, ['коричневый', 'белый']) sheet.auto_filter.add_sort_condition ('B2: B8') wb.save ('отфильтрованный.xlsx')В этом примере мы создаем лист с элементами и их цветами. Устанавливаем фильтр и условие сортировки.
Размеры Openpyxl
Чтобы получить те ячейки, которые действительно содержат данные, мы можем использовать измерения.
sizes.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () sheet = book.active лист ['A3'] = 39 лист ['B3'] = 19 rows = [ (88, 46), (89, 38), (23, 59), (56, 21), (24, 18), (34, 15) ] для ряда в ряды: sheet.append (строка) печать (лист. размеры) print ("Минимальная строка: {0}". format (sheet.min_row)) print ("Максимальное количество строк: {0}".формат (sheet.max_row)) print ("Минимальный столбец: {0}". format (sheet.min_column)) print ("Максимальный столбец: {0}". format (sheet.max_column)) для c1, c2 на листе [размеры листа]: печать (c1.value, c2.value) book.save ('sizes.xlsx')В этом примере вычисляются размеры двух столбцов данных.
лист ['A3'] = 39 лист ['B3'] = 19 rows = [ (88, 46), (89, 38), (23, 59), (56, 21), (24, 18), (34, 15) ] для ряда в ряды: sheet.append (строка)Добавляем данные в рабочий лист.Обратите внимание, что мы начинаем добавлять с третий ряд.
печать (лист. размеры)Свойство
Dimensions
возвращает верхний левый и нижний правый ячейка области непустых ячеек.print ("Минимальная строка: {0}". format (sheet.min_row)) print ("Максимальное количество строк: {0}". format (sheet.max_row))Используя свойства
min_row
иmax_row
, мы получаем минимум и максимальная строка, содержащая данные.print ("Минимальный столбец: {0}".формат (sheet.min_column)) print ("Максимальный столбец: {0}". format (sheet.max_column))Со свойствами
min_column
иmax_column
мы получаем минимум и максимальный столбец, содержащий данные.для c1, c2 на листе [размеры листа]: печать (c1.value, c2.value)Мы перебираем данные и выводим их на консоль.
$ ./dimensions.py A3: B9 Минимальный ряд: 3 Максимальный ряд: 9 Минимальный столбец: 1 Максимальный столбец: 2 39 19 88 46 89 38 23 59 56 21 24 18 34 15Это результат примера.
листов
В каждой книге может быть несколько листов.
Рис.: ЛистыДавайте составим рабочую тетрадь с этими тремя листами.
листов.py
#! / usr / bin / env python импортировать openpyxl книга = openpyxl.load_workbook ('листов.xlsx') печать (book.get_sheet_names ()) active_sheet = book.active печать (тип (active_sheet)) sheet = book.get_sheet_by_name ("Март") печать (название листа)Программа работает с листами Excel.
печать (книга.get_sheet_names ())Метод
get_sheet_names
возвращает имена доступные листы в книге.active_sheet = book.active печать (тип (active_sheet))Достаем активный лист и выводим его тип на терминал.
sheet = book.get_sheet_by_name ("Март")Получаем ссылку на лист с помощью метода
get_sheet_by_name ()
.печать (название листа)Название полученного листа печатается на терминале.
$ ./sheets.py ['Январь февраль март'] <класс 'openpyxl.worksheet.worksheet.Worksheet'> маршЭто результат работы программы.
листов2.py
#! / usr / bin / env python импортировать openpyxl книга = openpyxl.load_workbook ('листов.xlsx') book.create_sheet («Апрель») печать (book.sheetnames) sheet1 = book.get_sheet_by_name ("Январь") book.remove_sheet (sheet1) печать (book.sheetnames) book.create_sheet ("Январь", 0) печать (book.sheetnames) книга.сохранить ('листов2.xlsx')В этом примере мы создаем новый лист.
book.create_sheet («Апрель»)Новый лист создается с помощью метода
create_sheet
.печать (book.sheetnames)Имена листов также могут отображаться с атрибутом
sheetnames
.book.remove_sheet (sheet1)Лист можно удалить с помощью метода
remove_sheet
.book.create_sheet ("Январь", 0)Новый лист может быть создан в указанной позиции; в нашем случае мы создаем новый лист в позиции с индексом 0.
$ ./sheets2.py ['Январь февраль март апрель'] ['Февраль', 'март', 'апрель'] ['Январь февраль март апрель']Это результат работы программы.
Можно изменить цвет фона рабочего листа.
листов3.py
#! / usr / bin / env python импортировать openpyxl книга = openpyxl.load_workbook ('листов.xlsx') sheet = book.get_sheet_by_name ("Март") sheet.sheet_properties.tabColor = "0072BA" book.save ('листов3.xlsx ')В примере изменяется цвет фона листа под названием "Марш".
sheet.sheet_properties.tabColor = "0072BA"Мы меняем свойство
Рис.: Цвет фона рабочего листаtabColor
на новый цвет.Цвет фона третьего листа был изменен на синий. цвет.
Объединение ячеек
Ячейки могут быть объединены методом
merge_cells
и не объединены с методомunmerge_cells
.Когда мы объединяем ячейки, все ячейки но верхний левый удаляется с листа.merging_cells.py
#! / usr / bin / env python из openpyxl import Workbook из openpyxl.styles import Alignment book = Рабочая тетрадь () sheet = book.active sheet.merge_cells ('A1: B2') ячейка = sheet.cell (строка = 1, столбец = 1) cell.value = 'Солнечный день' cell.alignment = Выравнивание (по горизонтали = 'по центру', по вертикали = 'по центру') book.save ('merging.xlsx')В этом примере мы объединяем четыре ячейки: A1, B1, A2 и B2.Текст в последняя ячейка находится по центру.
из openpyxl.styles import AlignmentЧтобы центрировать текст в последней ячейке, мы используем выравнивание
класс из модуля
openpyxl.styles
.sheet.merge_cells ('A1: B2')Мы объединяем четыре ячейки методом
merge_cells
.ячейка = sheet.cell (строка = 1, столбец = 1)Получаем последнюю ячейку.
cell.value = 'Солнечный день' ячейка.alignment = Выравнивание (по горизонтали = 'центр', по вертикали = 'центр')Мы устанавливаем текст в объединенную ячейку и обновляем ее выравнивание.
Рис.: Объединенные ячейкизакрепленные области Openpyxl
Когда мы фиксируем панели, мы оставляем видимой область рабочего листа при прокрутке до другая область рабочего листа.
freezing.py
#! / usr / bin / env python из openpyxl import Workbook из openpyxl.styles import Alignment book = Рабочая тетрадь () sheet = book.active лист.freeze_panes = 'B2' book.save ('freezing.xlsx')В примере фиксируются панели на ячейку B2.
sheet.freeze_panes = 'B2'Чтобы заморозить панели, мы используем свойство
freeze_panes
.Формулы Openpyxl
В следующем примере показано, как использовать формулы.
openpyxl
делает не делать расчетов; записывает формулы в ячейки.formulas.py
#! / usr / bin / env python из openpyxl import Workbook book = Рабочая тетрадь () лист = книга.активный строки = ( (34, 26), (88, 36), (24, 29), (15, 22), (56, 13), (76, 18) ) для ряда в ряды: sheet.append (строка) ячейка = sheet.cell (строка = 7, столбец = 2) cell.value = "= СУММ (A1: B6)" cell.font = cell.font.copy (жирный шрифт = True) book.save ('formulas.xlsx')В примере мы вычисляем сумму всех значений с функцией
СУММ ()
и стиль вывод жирным шрифтом.строки = ( (34, 26), (88, 36), (24, 29), (15, 22), (56, 13), (76, 18) ) для ряда в ряды: лист.добавить (строка)Создаем два столбца данных.
ячейка = sheet.cell (строка = 7, столбец = 2)Получаем ячейку, в которой показываем результат расчета.
cell.value = "= СУММ (A1: B6)"Записываем формулу в ячейку.
cell.font = cell.font.copy (жирный шрифт = True)Меняем стиль шрифта.
Рис.: Расчет суммы значенийизображений Openpyxl
В следующем примере мы показываем, как вставить изображение на лист.
write_image.py
#! / usr / bin / env python из openpyxl import Workbook из openpyxl.drawing.image импорт изображения book = Рабочая тетрадь () sheet = book.active img = Изображение ("icesid.png") sheet ['A1'] = 'Это Сид' sheet.add_image (img, 'B2') book.save ("sheet_image.xlsx")В этом примере мы записываем изображение на лист.
из openpyxl.drawing.image импорт изображенияРаботаем с классом
Image
отopenpyxl.Модуль drawing.image
.img = Изображение ("icesid.png")Создается новый класс
Image
. Theicesid.png
изображение находится в текущем рабочем каталоге.sheet.add_image (img, 'B2')Мы добавляем новое изображение с помощью метода
add_image
.Графики Openpyxl
Библиотека
openpyxl
поддерживает создание различных диаграмм, в том числе гистограммы, линейные диаграммы, диаграммы с областями, пузырьковые диаграммы, точечные диаграммы и круговые диаграммы.Согласно документации,
openpyxl
поддерживает создание диаграмм в только рабочий лист. Диаграммы в существующих книгах будут потеряны.create_bar_chart.py
#! / usr / bin / env python из openpyxl import Workbook из импорта openpyxl.chart ( Справка, Серии, BarChart ) book = Рабочая тетрадь () sheet = book.active rows = [ («США», 46), («Китай», 38), («Великобритания», 29), («Россия», 22), («Южная Корея», 13), («Германия», 11) ] для ряда в ряды: лист.добавить (строка) data = Ссылка (лист, min_col = 2, min_row = 1, max_col = 2, max_row = 6) категории = Ссылка (лист, min_col = 1, min_row = 1, max_row = 6) chart = BarChart () chart.add_data (данные = данные) chart.set_categories (категории) chart.legend = Нет chart.y_axis.majorGridlines = Нет chart.varyColors = True chart.title = "Золотые олимпийские медали в Лондоне" sheet.add_chart (диаграмма, «A8») book.save ("bar_chart.xlsx")В этом примере мы создаем гистограмму, чтобы показать количество олимпийских золотые медали от каждой страны в Лондоне в 2012 году.
из импорта openpyxl.chart ( Справка, Серии, BarChart )Модуль
openpyxl.chart
имеет инструменты для работы с диаграммами.book = Рабочая тетрадь () sheet = book.activeСоздана новая книга.
rows = [ («США», 46), («Китай», 38), («Великобритания», 29), («Россия», 22), («Южная Корея», 13), («Германия», 11) ] для ряда в ряды: sheet.append (строка)Мы создаем некоторые данные и добавляем их в ячейки активного листа.
data = Ссылка (лист, min_col = 2, min_row = 1, max_col = 2, max_row = 6)С помощью класса
Reference
мы ссылаемся на строки на листе, которые представляют данные. В нашем случае это номера золотых олимпийских медалей.категории = Ссылка (лист, min_col = 1, min_row = 1, max_row = 6)Создаем ось категорий. Ось категорий - это ось с данными рассматривается как последовательность нечисловых текстовых меток. В нашем случае мы имеем текстовые метки, представляющие названия стран.
chart = BarChart () chart.add_data (данные = данные) chart.set_categories (категории)Создаем гистограмму и задаем ей данные и категории.
chart.legend = Нет chart.y_axis.majorGridlines = НетИспользуя атрибуты
legend
иmajorGridlines
, мы отключите легенды и основные линии сетки.chart.varyColors = TrueПри установке
DifferentColors от
доTrue
, каждая полоса имеет свой цвет.chart.title = "Золотые олимпийские медали в Лондоне"Для диаграммы задается заголовок.
sheet.add_chart (диаграмма, «A8»)Созданная диаграмма добавляется на лист с помощью метода
Рис.: Гистограммаadd_chart
.В этом руководстве мы работали с библиотекой openpyxl. Мы прочитали данные из файла Excel, записанные данные в файл Excel.
Посетите учебник Python или перечислить все руководства по Python.
.