Макрос для открытия листа excel

Как открыть конкретный лист в книге?

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

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

Открыть конкретный лист в книге с кодом VBA

Автоматически открывать определенную книгу при включении Excel с помощью Kutools for Excel хорошая идея3

Добавление книг в папку избранного с помощью вкладки Office хорошая идея3


Открыть конкретный лист в книге с кодом VBA

Выполните следующие шаги, чтобы завершить эту задачу:

1. Откройте книгу, которую хотите использовать.

2. Удерживайте ALT + F11 , чтобы открыть Окно Microsoft Visual Basic для приложений.

3. На левой панели выберите имя книги, которую вы хотите использовать (если левая панель скрыта, щелкните Вид > Обозреватель проекта чтобы показать это), затем дважды щелкните Эта рабочая тетрадь , чтобы открыть модуль, а затем скопируйте и вставьте следующий код VBA на правой панели. Смотрите скриншот:

Private Sub Workbook_Open() 
Worksheets("Mastersheet").Activate
End Sub

doc-open-specific-sheet1

Примечание: В приведенном выше коде «Мастер-лист«- это имя рабочего листа, необходимого для запуска при каждом открытии книги, вы можете изменить его на свое собственное.

4. Закройте редактор VBA и сохраните книгу как Excel Macro-Enabled Workbook как показано на следующем скриншоте:

doc-open-specific-sheet1

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

doc-open-specific-sheet1


Автоматически открывать определенную книгу при включении Excel с помощью Kutools for Excel

Если вам нужно использовать одну рабочую книгу каждый день, вы можете выбрать автоматическое открытие этого рабочего листа при включении Excel каждый раз, Kutools for Excel.

Если вы установили Kutools for Excel, просто нужно добавить книгу в Автоматически открывать эти листы в следующий раз list, то при каждом открытии Excel книга открывается одновременно .:

После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

1. Откройте используемую книгу и щелкните Кутулс Плюс> Workbook > Автоматически открывать эти книги в следующий раз. см. снимок экрана:

док ктэ 1

2. В появившемся диалоговом окне проверьте книгу и щелкните Ok. Затем, пока вы включаете Excel, открывается книга.

док ктэ 2

Наконечник: Если вам не нужно открывать ее в следующий раз, снимите флажок с книги в диалоговом окне, если вам больше не нужно открывать ее автоматически, выберите ее и нажмите Очистить чтобы удалить его из списка диалога.

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


Добавление книг в папку избранного с помощью вкладки Office

Если вы просто хотите щелкнуть, найти определенные книги и открыть их, когда вам нужно, вы можете бесплатно установить Office Tab и добавьте книги в Избранное папку.

После бесплатной установки вкладки Office выполните следующие действия:

Откройте книги, которые нужно добавить в избранное, и нажмите Office Tab > Мои Избранные > Добавить все в эту группу. Смотрите скриншот:

док от 1

Теперь все книги добавлены в папку «Избранное» и нажмите Office Tab > Мои Избранные  стрелкой вниз чтобы выбрать книгу для открытия, если вам нужно, и если вы хотите открыть все это, нажмите Открыть эту группу.

док от 2

Нажмите здесь, чтобы бесплатно загрузить Office Tab и получить 30 дней бесплатного пробного периода.


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Make a particular worksheet visible using a macro in Excel.

This is called activating a worksheet and is rather easy to do.

Sections:

Activate Worksheet by Name

Activate Worksheet by Index Number

Notes

Activate Worksheet by Name

Let’s navigate to, activate, the worksheet called «Sheet2».

Worksheets("Sheet2").Activate

08008f3433d614b4eb713fdcde4e01eb.jpg

Worksheets(«Shee2») is how we reference the sheet to which we want to navigate.

Sheet2 is the name of the sheet to which we want to navigate. Make sure to surround it with double quotation marks.

Activate is what actually takes the user to that worksheet.

Putting it all together, we get: Worksheets(«Sheet2»).Activate

It’s as simple as that.

Activate Worksheet by Index Number

This time, let’s navigate to the second worksheet using its index number.

All we do is to replace «Sheet2» from the last example with 2.

Worksheets(2).Activate

3e8969b16e6f131afc29445b0f9a02ac.jpg

2 is the index number of the desired worksheet and Activate is what takes us to the desired worksheet.

This example can be confusing if you are not used to using index numbers, but index numbers are really helpful when you have to do something like loop through all of the worksheets in the workbook.

Notes

Basically, just reference the desired worksheet, however you want, and then type .Activate after it.

You should not use the Activate feature to navigate to a worksheet so that you can get data from it or put data into it. This is very bad Macro/VBA design and it will make your life hell later on. To get data from separate worksheets, read this tutorial: Select Data from Separate Worksheets with Macros VBA in Excel.

This feature should be used when you want the user to end up on a specific worksheet.

Make sure to download the sample file attached to this tutorial so that you can see this macro in Excel and work with it.

Similar Content on TeachExcel

Copy and Paste Data using Macro VBA in Excel

Tutorial: How to copy and paste data using a Macro in Excel. I’ll show you multiple ways to do this,…

Select Data from Separate Worksheets with Macros VBA in Excel

Tutorial: Select data from other worksheets with Macros and VBA without navigating to those workshee…

Get the Last Row using VBA in Excel

Tutorial:
(file used in the video above)
How to find the last row of data using a Macro/VBA in Exce…

Login to a Website using a Macro

: Connect and login to a website using a macro in Excel.
This allows you to open a website a…

Get the Name of a Worksheet in Macros VBA in Excel

Tutorial: How to get the name of a worksheet in Excel using VBA and Macros and also how to store tha…

Guide to Creating Charts with a Macro in Excel

Tutorial: How to add, edit, and position charts in Excel using VBA.
This tutorial covers what to do …

Subscribe for Weekly Tutorials

BONUS: subscribe now to download our Top Tutorials Ebook!

На чтение 1 мин. Просмотров 4.7k.

Что делает макрос: помогает открыть Excel-книгу на нужном листе. С этим макросом Ваши пользователи будут сразу оказываться в конкретном месте файла.

Содержание

  1. Как макрос работает
  2. Код макроса
  3. Как это использовать

Как макрос работает

Этот код запускается по событию рабочей книги (Open— при открытии файла) и делает активным нужный лист.

Код макроса

Private Sub Workbook_Open()
'Указываем нужный нам лист
Sheets("Отчёт").Select
End Sub

Как это использовать

Для реализации этого макроса, вам нужно скопировать и вставить его в код события Workbook_Open. Размещение макроса здесь позволяет запускать макрос сразу при открытии excel- файла.

  1. Активируйте редактор Visual Basic, нажав ALT + F11.
  2. В окне проекта найдите свой проект/имя рабочей книги и нажмите на знак плюс рядом с ним в чтобы увидеть все листы и модуль ЭтаКнига.
  3. Правой кнопкой мыши нажмите на модуле ЭтаКнига и выберите View Code
  4. В левой части окна выберите объект WorkBook (Excel автоматом предложит написать макрос для события Workbook_Open, если нет, то выполните п.5
  5. В правом выпадающем списке событие Open

Цитата
Сообщение от Ципихович Эндрю
Посмотреть сообщение

Неужели в ВБ не так?? проверьте, отпишитесь, ОК??

Всё так. Только я, пока, чайник и совсем недавно начал изучать язык программирования, а тут ещё по работе нужно было… Короче получилось, но открывает не из всех папок. С некоторых папок выдаёт ошибку, что нету доступа. Если знаете в чем проблема, отпишите пожалуйста. А пока, очень благодарен за помощь!!!

Добавлено через 23 минуты
В принципе разобрался с открытием, но тут проблема дальше

Visual Basic
1
2
3
4
5
6
7
8
 Private Sub Command1_Click()
Set oExcel = CreateObject("Excel.Application") 'ñîçäàòü îáúåêò Microsoft Excel
oExcel.Workbooks.Open "C:111AIC_SIP" & AIC_SIP, , , , 111, 11 '111 ýòî ïàðîëü íà îòêðûòèå ôàéëà, 11 ýòî ïàðîëü íà èçìåíåèå
oExcel.Visible = True 'False
 Windows("AIC_SIP.xls").Activate 'àêòèâàöèÿ ìîåãî ôàéëà
 Range("A1:C3").Select 'âûáèðàþ äèàïàçîí ÿ÷ååê
    Selection.Copy 'êîïèðóþ
   End Sub

Выдаёт ошибку и что хочешь делай. Подскажите пожалуйста как активизировать тот лист и работать в нём (я так понимаю, нужно WorkSheets сделать активным, а не всю книгу) . Или ещё попроще, может после открытия книги, можно как то запустить макрос написанный уже в Excel, а там уже на много проще?

  1. Что делает макрос
  2. Код макроса
  3. Как работает макрос
  4. Как использовать
  5. Скачать файл

Ссылка на это место страницы:
#zadacha

Помогает открыть Excel-книгу на нужном листе. С этим макросом Ваши пользователи будут сразу оказываться в конкретном месте файла. Этот код запускается по событию рабочей книги (Open— при открытии файла) и делает активным нужный лист. 

Ссылка на это место страницы:
#formula

  1. Private Sub Workbook_Open()
  2. Sheets("Отчёт").Select
  3. End Sub

Ссылка на это место страницы:
#kak

Макрос открывает книгу Excel на нужном листе, определяя этот лист перед запуском.

Ссылка на это место страницы:
#touse

Для реализации этого макроса, вам нужно скопировать и вставить его в код события Workbook_Open

Размещение макроса здесь позволяет запускать макрос сразу при открытии Excel- файла. 

1. Активируйте редактор Visual Basic, нажав ALT + F11
2. В окне проекта найдите свой проект/имя рабочей книги и нажмите на знак плюс рядом с ним в чтобы увидеть все листы и модуль ЭтаКнига. 
3. Правой кнопкой мыши нажмите на модуле ЭтаКнига и выберите View Code 
4. В левой верхней части окна выберите объект WorkBook (Excel автоматом предложит написать макрос для события Workbook_Open, если нет, то выполните п.5 
5. В правом верхнем выпадающем списке выберите событие Open

Ссылка на это место страницы:
#file

Файлы статей доступны только зарегистрированным пользователям.

1. Введите свою почту

2. Нажмите Зарегистрироваться

3. Обновите страницу
Вместо этого блока появится ссылка для скачивания материалов.

Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель — помочь вам эффективнее работать в Excel. 

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

Подписывайтесь на нас в соц.сетях:

Содержание

  • ActiveSheet
  • Выбранные листы против ActiveSheet
  • Выберите рабочий лист
  • Дополнительные примеры активации / выбора листов

В этой статье будет обсуждаться объект ActiveSheet в VBA. Также будет обсуждаться, как активировать, выбирать и переходить к рабочим листам (и многое другое). Прочтите наше полное руководство по рабочим листам VBA для получения дополнительной информации о работе с рабочими листами в VBA.

В VBA ActiveSheet относится к текущему активному рабочему листу. Одновременно может быть активен только один лист.

Активировать рабочий лист (настройка ActiveSheet)

Чтобы установить ActiveSheet, используйте Worksheet.Activate:

1 Рабочие листы («Ввод»). Активировать

Команда «Активировать лист» фактически «перейдет» к листу, изменив видимый лист.

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

Имя ActiveSheet

Чтобы получить имя ActiveSheet:

1 msgbox ActiveSheet.name

Выбранные листы против ActiveSheet

В любой момент времени ActiveSheet может быть только один лист. Однако можно выбрать сразу несколько листов.

Когда выбрано несколько листов, активным считается только самый верхний лист (ActiveSheet).

Выберите рабочий лист

Если вы хотите выбрать лист вместо его активации. Вместо этого используйте .Select.

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

Это выбирает рабочий лист на основе его имени вкладки листа

1 Таблицы («Ввод»). Выбрать

Выбрать лист по порядковому номеру

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

1 Рабочие листы (1) .Выбрать

Выберите рабочий лист с кодовым именем VBA

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

Выбрать текущий лист

Чтобы выбрать текущий рабочий лист, используйте объект ActiveSheet:

Дополнительные примеры активации / выбора листов

Установите ActiveSheet на переменную

Это назначит ActiveSheet переменной объекта рабочего листа.

123 Dim ws как рабочий листУстановить ws = ActiveSheet

Изменить имя ActiveSheet

Это изменит имя ActiveSheet.

1 ActiveSheet.Name = «NewName»

С ActiveSheet

Использование оператора With позволяет оптимизировать код при работе с объектами (такими как листы или ActiveSheet).

12345 С ActiveSheet.Name = «StartFresh».Cells.Clear.Range («A1»). Value = .NameКонец с

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

Перебирать выбранные листы

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

12345678 Sub GetSelectedSheetsName ()Dim ws как рабочий листДля каждого ws в ActiveWindow.SelectedSheetsMsgBox ws.NameСледующий wsКонец подписки

Перейти к следующему листу

Этот код перейдет на следующий лист. Если ActiveSheet является последним листом, он перейдет к первому листу в рабочей книге.

12345 Если ActiveSheet.Index = Worksheets.Count, тоРабочие листы (1) .АктивироватьЕщеActiveSheet.Next.ActivateКонец, если

Вы поможете развитию сайта, поделившись страницей с друзьями

Содержание

  1. VBA Activate Sheet — Как активировать лист в Excel, используя код VBA?
  2. Excel VBA Activate Sheet
  3. Как активировать лист в Excel VBA?
  4. VBA Activate Sheet — Пример № 1
  5. VBA Activate Sheet — Пример № 2
  6. VBA Activate Sheet — Пример № 3
  7. Плюсы Excel VBA Activate Sheet
  8. То, что нужно запомнить
  9. Рекомендуемые статьи
  10. VBA Выбрать лист, активировать лист и получить активный лист
  11. ActiveSheet
  12. Активировать рабочий лист (настройка ActiveSheet)
  13. Имя ActiveSheet
  14. Выбранные листы против ActiveSheet
  15. Выберите рабочий лист
  16. Выбрать лист по имени вкладки
  17. Выбрать лист по порядковому номеру
  18. Выберите рабочий лист с кодовым именем VBA
  19. Выбрать текущий лист
  20. Дополнительные примеры активации / выбора листов
  21. Установите ActiveSheet на переменную
  22. Изменить имя ActiveSheet
  23. С ActiveSheet
  24. Перебирать выбранные листы
  25. Перейти к следующему листу

VBA Activate Sheet — Как активировать лист в Excel, используя код VBA?

Excel VBA Activate Sheet

Для активации или выбора листа в Excel мы вручную переходим на лист и нажимаем на вкладку «Лист». Но когда мы пишем код, в котором нам нужно связать разные листы в разных формах, мы можем использовать функцию VBA Activate Sheet. Это можно сделать с помощью «. Активировать »в VBA. Это автоматически выберет или активирует лист для дальнейшего использования.

Активация листа означает выбор этого листа. И чтобы узнать, активирован или выбран этот лист, после проверки кода в Excel лучше проверить, можем ли мы увидеть текущий лист или нет.

Как активировать лист в Excel VBA?

Ниже приведены различные примеры активации листа в Excel с использованием кода VBA.

Вы можете скачать этот шаблон Excel для активации листа VBA здесь — Шаблон Excel для активации листа VBA

VBA Activate Sheet — Пример № 1

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

Выполните следующие шаги, чтобы активировать лист в Excel VBA.

Шаг 1: Теперь перейдите к VBA и на вкладке меню « Вставка » выберите « Модуль», как показано ниже.

Модуль — это место, где мы напишем код для активации листа. После этого мы откроем новый модуль.

Шаг 2: В этом модуле создайте подкатегорию функции с любым именем. Для лучшего понимания мы создали его от имени VBA Activate Sheet по порядку. Это поможет в отслеживании правильного модуля.

Код:

Шаг 3: Теперь используйте функцию « Листы» для выбора любого листа.

Код:

Шаг 4: Теперь, чтобы фактически выбрать или активировать лист в Excel, используйте команду « Активировать», за которой следует точка (.)

Код:

Таким образом, мы разрешаем выбирать лист с именем «Первый» всякий раз, когда код вызывает его.

Шаг 5: Теперь сделайте то же самое для имени листа Second и Third, как показано ниже.

Код:

Шаг 6: Теперь скомпилируйте код пошагово или за один раз. Небольшой код может быть скомпилирован за один раз, что может не привести к ошибке. После этого запустите код, нажав на кнопку Play, которая находится под строкой меню.

Мы увидим, что третий лист будет выбран так, как он был расположен в конце. Если мы выполним пошаговую компиляцию, то сможем увидеть, кто первый, второй и третий листы активируются нажатием клавиши F8.

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

Снова нажав клавишу F8, компилятор пройдет через вторую строку кода, и мы увидим, что лист Second активирован.

И когда компилятор достиг End Sub структуры кода, мы активируем третий лист, как показано ниже.

VBA Activate Sheet — Пример № 2

Мы также можем использовать команду «Рабочий лист» для выбора и активации любого листа. Этот процесс очень похож на пример-1. Для этого еще раз рассмотрим имя файла с именем First , Second и Third. Выполните следующие шаги, чтобы активировать лист в Excel VBA.

Шаг 1: В модуле начните писать подкатегорию VBA Activate Sheet в последовательности, как показано ниже.

Код:

Шаг 2: Поскольку мы использовали команду Sheet для активации Sheet, здесь мы будем использовать команду Worksheet .

Код:

Шаг 3: Теперь используйте функцию «Активировать», обозначенную точкой (.), Чтобы активировать лист.

Код:

Шаг 4: Теперь сделайте то же самое для Второго и Третьего Листа.

Код:

Шаг 5: После этого скомпилируйте код. Здесь мы сделаем пошаговую компиляцию, чтобы увидеть изменения. Для прессы F8, которая выполняет пошаговую компиляцию и запуск кода. Когда компилятор пройдет через вторую строку кода, мы увидим, что в листе Excel второй активирован или выбран.

Шаг 6: Снова нажмите клавишу F8, чтобы выбрать следующий лист. Мы увидим, как компилятор проходит через третью строку кода и достигает конца, лист с именем «Третий» активируется или выбирается.

VBA Activate Sheet — Пример № 3

Есть еще один способ активировать любой лист. Для этого мы также рассмотрим тот же набор листов с одинаковыми именами First, Second и Third, которые используются в приведенных выше примерах. В этом примере мы увидим 3 комбинации функций Sheet и Worksheet вместе с Select, которые мы будем использовать вместо Activate . Функция выбора работает так же, как и активировать . Используя комбинацию различных функций для одного и того же использования, мы увидим, как меняется результат.

Выполните следующие шаги, чтобы активировать лист в Excel VBA.

Шаг 1: Для этого откройте модуль и поместите подкатегорию в название выполняемой функции или в любое другое имя по вашему выбору. Мы сохраняем имя, но в последовательности, как показано ниже.

Код:

Шаг 2: Снова таким же образом используйте функцию Sheets с именем листа, как показано ниже.

Код:

Шаг 3: После этого используйте функцию Select, тянущуюся через точку (.)

Код:

Шаг 4: Теперь во второй строке кода мы будем использовать функцию Sheets вместе с Activate для листа с именем Second, как показано ниже.

Код:

Шаг 5: И для последнего листа с именем «Третий» мы будем использовать «Рабочие листы» вместе с функцией «Выбор», чтобы активировать его, как показано ниже.

Код:

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

Когда компиляция проходит через вторую строку кода, лист Second будет активирован.

И наконец, когда компилятор придет в End Sub, активируется третий лист, как показано ниже.

Вот как мы можем использовать комбинацию Sheets и Worksheets вместе с функциями Activate и Select для активации любого рабочего листа.

Плюсы Excel VBA Activate Sheet

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

То, что нужно запомнить

  • Функция выбора и активации выполняет ту же функцию, что и активация любого листа. Хотя название другое.
  • Различные комбинации выбора и активации вместе с листами и рабочим листом возможны для активации одного или нескольких рабочих листов.
  • Активация любых листов означает выбор этого листа.
  • После выполнения кода сохраните файл в Macro Enable Worksheet. Это помогает сохранить код, чтобы мы могли использовать его несколько раз без каких-либо потерь.

Рекомендуемые статьи

Это руководство к листу активации VBA. Здесь мы обсудили, как активировать лист в Excel, используя код VBA, а также некоторые практические примеры и загружаемый шаблон Excel. Вы также можете просмотреть наши другие предлагаемые статьи —

  1. VBA Range Cells
  2. Найти внешние ссылки в Excel
  3. VBA Active Cell
  4. Строка состояния в Excel

Источник

VBA Выбрать лист, активировать лист и получить активный лист

В этой статье будет обсуждаться объект ActiveSheet в VBA. Также будет обсуждаться, как активировать, выбирать и переходить к рабочим листам (и многое другое). Прочтите наше полное руководство по рабочим листам VBA для получения дополнительной информации о работе с рабочими листами в VBA.

ActiveSheet

В VBA ActiveSheet относится к текущему активному рабочему листу. Одновременно может быть активен только один лист.

Активировать рабочий лист (настройка ActiveSheet)

Чтобы установить ActiveSheet, используйте Worksheet.Activate:

1 Рабочие листы («Ввод»). Активировать

Команда «Активировать лист» фактически «перейдет» к листу, изменив видимый лист.

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

Имя ActiveSheet

Чтобы получить имя ActiveSheet:

1 msgbox ActiveSheet.name

Выбранные листы против ActiveSheet

В любой момент времени ActiveSheet может быть только один лист. Однако можно выбрать сразу несколько листов.

Когда выбрано несколько листов, активным считается только самый верхний лист (ActiveSheet).

Выберите рабочий лист

Если вы хотите выбрать лист вместо его активации. Вместо этого используйте .Select.

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

Это выбирает рабочий лист на основе его имени вкладки листа

1 Таблицы («Ввод»). Выбрать

Выбрать лист по порядковому номеру

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

1 Рабочие листы (1) .Выбрать

Выберите рабочий лист с кодовым именем VBA

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

Выбрать текущий лист

Чтобы выбрать текущий рабочий лист, используйте объект ActiveSheet:

Дополнительные примеры активации / выбора листов

Установите ActiveSheet на переменную

Это назначит ActiveSheet переменной объекта рабочего листа.

123 Dim ws как рабочий листУстановить ws = ActiveSheet

Изменить имя ActiveSheet

Это изменит имя ActiveSheet.

1 ActiveSheet.Name = «NewName»

С ActiveSheet

Использование оператора With позволяет оптимизировать код при работе с объектами (такими как листы или ActiveSheet).

12345 С ActiveSheet.Name = «StartFresh».Cells.Clear.Range («A1»). Value = .NameКонец с

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

Перебирать выбранные листы

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

12345678 Sub GetSelectedSheetsName ()Dim ws как рабочий листДля каждого ws в ActiveWindow.SelectedSheetsMsgBox ws.NameСледующий wsКонец подписки

Перейти к следующему листу

Этот код перейдет на следующий лист. Если ActiveSheet является последним листом, он перейдет к первому листу в рабочей книге.

Источник

Понравилась статья? Поделить с друзьями:
  • Макрос для окна в excel
  • Макрос для объединения ячеек в excel по условию
  • Макрос для объединения таблиц excel
  • Макрос для объединения одинаковых ячеек в таблице excel
  • Макрос для объединения нескольких файлов excel в один файл