Excel vba excel sheet: Объект Sheets (Excel) | Microsoft Learn

Содержание

Объект Sheets (Excel) | Microsoft Learn





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья

  • Чтение занимает 2 мин

Коллекция всех листов в указанной или активной книге.

Коллекция Листов может содержать объекты Chart или Worksheet .

Коллекция Листов полезна при возвращении листов любого типа. Если вам нужно работать с листами только одного типа, см. в разделе объект для этого типа листа.

Пример

Чтобы вернуть коллекцию Листов, используйте свойство Sheets объекта Workbook. В следующем примере печатаются все листы в активной книге.

Sheets.PrintOut

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

Sheets.Add type:=xlChart, count:=2, after:=Sheets(2)

Чтобы вернуть один объект Chart или Worksheet, используйте листы (индекс), где индекс — это имя листа или номер индекса. В следующем примере активируется лист с именем Sheet1.

Sheets("Sheet1").Activate

Используйте листы (массив), чтобы указать несколько листов. В следующем примере листы с именем Sheet4 и Sheet5 перемещаются в начало книги.

Sheets(Array("Sheet4", "Sheet5")).Move before:=Sheets(1)

Методы

  • Add
  • Add2
  • Copy
  • удаление;
  • FillAcrossSheets
  • Move
  • PrintOut
  • PrintPreview
  • Select

Свойства

  • Приложение
  • Count
  • Creator
  • HPageBreaks
  • Item
  • Parent
  • Visible
  • VPageBreaks

См. также

  • Справочник по объектной модели Excel

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.






Метод Sheets.

Add (Excel) | Microsoft Learn





Twitter




LinkedIn




Facebook




Адрес электронной почты










  • Статья

  • Чтение занимает 2 мин

Создает новый рабочий лист, лист диаграммы или макроса. Новый лист становится активным.

Синтаксис

выражения. Добавление (До, После, Граф, Тип)

выражение: переменная, представляющая объект Sheets.

Параметры

ИмяОбязательный или необязательныйТип данныхОписание
BeforeНеобязательныйVariantОбъект, указывающий лист, перед которым добавляется новый лист.
AfterНеобязательныйVariantОбъект, указывающий лист, после которого добавляется новый лист.
CountНеобязательныйVariantКоличество добавляемых листов. Значение по умолчанию — это количество выбранных листов.
TypeНеобязательныйVariantОпределяет тип листа. Может быть одним из следующих констант XlSheetType : xlWorksheet, xlChart, xlExcel4MacroSheet или xlExcel4IntlMacroSheet. Если вставляется лист на основе существующего шаблона, укажите путь к шаблону. Значение по умолчанию — xlWorksheet.

Возвращаемое значение

Значение Object, представляющее новый рабочий лист, лист диаграммы или макроса.

Если оба параметра, Before и After, отсутствуют, новый лист вставляется перед активным листом.

Пример

В этом примере новый лист вставляется перед последним листом в активной книге.

ActiveWorkbook.Sheets.Add Before:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count)

В этом примере вставляется новая таблица после последнего таблицы в активной книге, и возвращается ссылка на объект в локальной переменной.

Dim sheet As Worksheet
Set sheet = ActiveWorkbook. Sheets.Add(After:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count))

Примечание

В 32-разрядной версии Excel 2010 этот метод может создать не более 255 листов за один раз.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.







Объект

листов (Excel) | Microsoft Узнайте

Редактировать

Твиттер

LinkedIn

Фейсбук

Эл. адрес

  • Статья
  • 2 минуты на чтение

Коллекция всех листов указанной или активной книги.

Коллекция Sheets может содержать Диаграмма или Рабочий лист объектов.

Коллекция Sheets полезна, когда вы хотите вернуть листы любого типа. Если вам нужно работать с листами только одного типа, см. раздел объекта для этого типа листа.

Пример

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

 Листы.Распечатка
 

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

 Sheets.Add type:=xlChart, count:=2, after:=Sheets(2)
 

Используйте Sheets ( index ), где index — это имя листа или номер индекса, чтобы вернуть один объект Chart или Worksheet . В следующем примере активируется лист с именем Sheet1.

 Листы("Лист1").Активировать
 

Используйте Sheets ( array ), чтобы указать более одного листа. В следующем примере листы с именами Sheet4 и Sheet5 перемещаются в начало книги.

 Листы(Массив("Лист4", "Лист5")).Переместить перед:=Листы(1)
 

Методы

  • Добавить
  • Добавить2
  • Копия
  • Удалить
  • Заполнить через листы
  • Переместить
  • Распечатка
  • Предварительный просмотр печати
  • Выберите

Свойства

  • Применение
  • Счет
  • Создатель
  • HPageBreaks
  • Товар
  • Родительский
  • Видимый
  • VPageBreaks

См. также

  • Справочник по объектной модели Excel

Поддержка и отзывы

У вас есть вопросы или отзывы об Office VBA или этой документации? См. раздел Поддержка и отзывы Office VBA, чтобы узнать, как вы можете получить поддержку и оставить отзыв.

листов VBA — Полное руководство

В этой статье

  • листов против. Рабочие листы
  • Ссылки на листы
    • ActiveSheest
    • Наименование листа
    • Индекс листа
      • Листовый номер Индекс — последний лист в рабочей книге
    • Лист «Кодовое название»
    • Ссылка на простых в других рабочих учебниках
  • Activing verssing rains в других рабочих учебниках
  • 7
  • 7
  • 70007. Выберите лист
    • Активировать лист
    • Выберите лист
    • Выберите несколько листов
  • Переменная рабочая лист
  • Цикл по всем листам в рабочей книге
  • Защита рабочего листа
    • .
    • Worksheet Visible Property
      • Показать Worksheet
      • Hide Worksheet
      • Very Hide Worksheet
    • События на уровне рабочего листа
      • Событие активации рабочего листа
      • Событие изменения рабочего листа
    • Памятка по рабочему листу
    • Памятка по рабочим листам VBA

    Это полное руководство по работе с таблицами Excel в VBA.

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

    листов против. Листы

    С помощью VBA можно ссылаться на листы двумя способами. Первый — с объектом Sheets:

     Листы ("Лист1"). Активировать 

    Другой объект с рабочими листами:

     Рабочие листы ("Лист1"). Активировать 

    В 99% случаев эти два объекта идентичны. На самом деле, если вы искали в Интернете примеры кода VBA, вы, вероятно, видели использование обоих объектов. Вот разница:

    Коллекция листов содержит рабочие листы и листы диаграмм.

     

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

    Ссылки на листы

    Существует несколько различных способов создания ссылок на листы:

    • ActiveSheet
    • Имя вкладки листа
    • Индексный номер листа
    • Кодовое наименование листа

    ActiveSheet

    ActiveSheet — это лист, активный в данный момент. Другими словами, если вы приостановили свой код и посмотрели в Excel, то виден лист. В приведенном ниже примере кода будет отображаться MessageBox с именем ActiveSheet.

     MsgBox ActiveSheet.Name 

    Имя листа

    Возможно, вы больше всего знакомы со ссылками на листы по имени вкладки:

     Sheets("TabName"). Активировать 

    Это имя листа, которое видно пользователям Excel. Введите его в объект листов в виде строки текста, заключенной в кавычки.

    Индексный номер листа

    Индексный номер листа — это позиция листа в книге. 1 — первый лист. 2 — второй лист и т. д.:

     листов(1).Активировать 
    Индексный номер листа — последний лист в книге

    Чтобы сослаться на последний лист в рабочей книге, используйте Sheets.Count, чтобы получить последний индексный номер и активировать этот лист:

     Sheets(Sheets.Count).Activate 

    Sheet » Code Name»

    Кодовое имя листа — это имя объекта в VBA:

     CodeName. Activate 

    VBA Coding Made Easy

    Прекратите искать код VBA в Интернете. Узнайте больше об AutoMacro — конструкторе кода VBA, который позволяет новичкам создавать процедуры с нуля с минимальными знаниями в области программирования и множеством функций, позволяющих сэкономить время для всех пользователей!

    Узнать больше!!

    Ссылки на листы в других рабочих книгах

    Также легко ссылаться на листы в других рабочих книгах. Для этого вам необходимо использовать объект Workbooks:

     Workbooks("VBA_Examples.xlsm").Worksheets("Sheet1").Activate 

    Важно: Рабочая книга должна быть открыта, прежде чем вы сможете ссылаться на ее листы.

    Активация и выбор листа

    В другой статье мы обсуждаем все об активации и выборе листов. Краткая версия такова:

    Когда вы активируете лист, он становится ActiveSheet. Это лист, который вы бы увидели, если бы взглянули на свою программу Excel. Одновременно может быть активирован только один лист.

    Активировать лист

     Sheets("Sheet1"). Активировать 

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

    Программирование VBA | Генератор кода работает на вас!

    Выбрать лист

     Листы("Лист1").Выбрать 

    Выбрать несколько листов

    Использовать массив для одновременного выбора нескольких листов:

     Рабочие листы(Массив("Лист2", "Лист3")).Выбрать 

    Переменная рабочего листа

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

    Объявить переменную рабочего листа:

     Dim ws as worksheet 

    Назначить рабочий лист переменной:

     Set ws = Sheets("Sheet1") 

    Теперь вы можете ссылаться на переменную рабочего листа в своем коде:

     ws .Activate 

    Цикл по всем листам в книге

    Переменные рабочего листа полезны, когда вы хотите просмотреть все рабочие листы в рабочей книге. Самый простой способ сделать это:

     Dim ws as Worksheet
    
    Для каждого ws в рабочих листах
    MsgBox ws.name
    Следующий ВС 

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

    Защита рабочего листа

    AutoMacro | Окончательная надстройка VBA | Нажмите для бесплатной пробной версии!

    Защита рабочей книги

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

    Вы можете включить защиту рабочей книги с помощью VBA:

     ActiveWorkbook.Protect Password:="Password" 

    или отключить защиту рабочей книги:

     ActiveWorkbook.UnProtect Password:="Password" 

    Примечание. Вы также можете защитить / снять защиту без пароля, опуская аргумент Password:

     ActiveWorkbook.Protect 

     

    Защита рабочего листа

    Защита на уровне рабочего листа предотвращает изменение отдельных рабочих листов.

    Защитить лист

     Листы ("Лист1"). Защитить "Пароль" 

    Снять защиту листа

     Листы ("Лист1"). Снять защиту "Паролем" 

    пользователю для вставки строк и т. д.) Мы рекомендуем использовать средство записи макросов для записи нужных настроек.

    Здесь мы более подробно обсуждаем защиту рабочего листа.

     

    Автомакрос | Окончательная надстройка VBA | Нажмите для бесплатной пробной версии!

    Worksheet Visible Property

    Возможно, вы уже знаете, что рабочие листы могут быть скрыты:

    На самом деле существует три параметра видимости рабочего листа: Visible, Hidden и VeryHidden. Любой обычный пользователь Excel может отобразить скрытые листы, щелкнув правой кнопкой мыши в области вкладок рабочего листа (показано выше). Листы VeryHidden можно отобразить только с помощью кода VBA или из редактора VBA. Используйте следующие примеры кода, чтобы скрыть/отобразить рабочие листы:

    UNPIDE Worksheet

     Рабочие листы («Лист1»). Visible = xlsheetvisible 

    Hide Worksheet

     Worksheets ("Sheet1"). Visible = XLSHEETHIDDEN 

    ОЧЕНЬ ХОРОДА.

     

    Автомакрос | Окончательная надстройка VBA | Нажмите для бесплатной пробной версии!

    События уровня рабочего листа

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

    Процедуры событий рабочего листа должны быть помещены в модуль рабочего листа:

    Существует множество событий рабочего листа. Чтобы увидеть полный список, перейдите в модуль рабочего листа, выберите «Рабочий лист» в первом раскрывающемся списке. Затем выберите процедуру события из второго раскрывающегося списка, чтобы вставить ее в модуль.

     

    Событие активации рабочего листа

    События активации рабочего листа запускаются каждый раз при открытии рабочего листа.

     Частная подпрограмма Worksheet_Activate()
      Диапазон("A1").Выбрать
    Конец суб 

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

    Событие изменения рабочего листа

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

    Памятка по рабочему листу

    Ниже вы найдете памятку, содержащую общие примеры кода для работы с листами в VBA

    Рабочие листы VBA Памятка

    Рабочие листы VBA

    Описание Пример кода
    Листы ссылок и активации
    Имя вкладки Листы («Ввод»). Активировать
    Кодовое имя VBA Sheet1.Activate
    Индексная позиция Листы(1). Активировать
    Выберите лист
    Выбрать лист Листы («Ввод»). Выбрать
    Установить для переменной Dim ws as Worksheet
    Установить ws = ActiveSheet
    Имя/переименование ActiveSheet.Name = «NewName»
    Следующий лист ActiveSheet.Next.Activate
    Цикл по всем листам Dim ws as Worksheet

    Для каждого ws в Worksheets
    Msgbox ws.name
    Next ws

    Цикл по выбранным листам Dim ws As Worksheet

    Для каждого ws в ActiveWindow.SelectedSheets
    MsgBox ws.Name
    Next ws

    Получить ActiveSheet MsgBox ActiveSheet.Name
    Добавить лист Листы.Добавить
    Добавить лист и имя Sheets. Add.Name = «NewSheet»
    Добавить лист с именем из ячейки Sheets.Add.Name = range(«a3»).value
    Добавить лист после другого Sheets.Add After:=Sheets(«Input»)
    Добавить лист после и имя Sheets.Add(After:=Sheets(«Input»)).Name = «NewSheet»
    Добавить лист перед и имя Sheets.Add(Before:=Sheets(«Input»)).Name = «NewSheet»
    Добавить лист в конец книги Sheets.Add After:=Sheets(Sheets.Count)
    Добавить лист в начало книги Sheets.Add(Before:=Sheets(1)).Name = «FirstSheet»
    Добавить лист к переменной Dim ws As Worksheet
    Set ws = Sheets.Add
    Копии рабочих листов
    Переместить лист в конец книги Листы(«Лист1»).Переместить после:=Листы(Листы.Количество)
    В новую книгу Листы («Лист1»). Копия
    Выбранные листы в новую книгу ActiveWindow.SelectedSheets.Copy
    Перед другим листом Листы(«Лист1»).Копировать до:=Листы(«Лист2»)
    Перед первым листом Листы(«Лист1»).Копировать до:=Листы(1)
    После последнего листа Листы(«Лист1»).Копировать после:=Листы(Листы.Количество)
    Копия и имя Sheets(«Sheet1»).Copy After:=Sheets(Sheets.Count)
    ActiveSheet.Name = «LastSheet»
    Копировать и назвать из значения ячейки Листы(«Лист1»).Копировать после:=Листы(Листы.Количество)
    ActiveSheet.Name = Range(«A1»).Значение
    В другую книгу Sheets(«Sheet1»).Копировать до:=Workbooks(«Example.xlsm»).Sheets(1)
    Скрыть/показать листы
    Скрыть лист Sheets(«Sheet1»).visible = False
    или
    Sheets(«Sheet1»). visible = xlSheetHidden
    Показать лист Sheets(«Sheet1»).Visible = True
    или
    Sheets(«Sheet1»).Visible = xlSheetVisible
    Очень скрыть лист Sheets(Sheet1).Visible = xlSheetVeryHidden
    Удалить или очистить листы
    Удалить лист Листы («Лист1»). Удалить
    Удалить лист (обработка ошибок) При ошибке возобновить следующий
    Листы(«Лист1»).Удалить
    При ошибке Перейти к 0
    Удалить лист (без запроса) Application.DisplayAlerts = False
    Sheets(«Sheet1»).Удалить
    Application.DisplayAlerts = True
    Очистить лист Листы(«Лист1»).Ячейки.Очистить
    Очистить только содержимое листа Sheets(«Sheet1»).Cells.ClearContents
    Очистить лист UsedRange Sheets(«Sheet1»).UsedRange.Clear
    Защита или снятие защиты листов
    Снять защиту (без пароля) Листы («Лист1»).

    Imacros | Все права защищены © 2021