Vba excel переключение между книгами
Хотите создавать решения, которые расширяют возможности Office на разнообразных платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office занимают меньше места по сравнению с надстройками и решениями VSTO, и вы можете создавать их, используя практически любую технологию веб-программирования, например HTML5, JavaScript, CSS3 и XML.
Синтаксис
выражения. Open (FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMru, Local, CorruptLoad)
выражение Переменная, представляюная объект Книги .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
FileName | Необязательный | Variant | Строка. Имя файла книги, которая должна быть открыта. |
UpdateLinks | Необязательный | Variant | Указывает, как обновляются внешние ссылки (ссылки) в файле, =SUM([Budget.xls]Annual!C10:C25) например ссылка на диапазон в книге Budget.xls в следующей формуле. Если этот аргумент не указан, пользователю будет предложено указать, как будут обновляться ссылки. Дополнительные сведения о значениях, используемых этим параметром, см. в разделе Примечание. |
Возвращаемое значение
Объект Книги , представляю который представляет открытую книгу.
Примечания
По умолчанию макрос включен при открытии файлов программным путем. Используйте свойство AutomationSecurity , чтобы настроить режим макрос безопасности, используемый при открытии файлов программным способом.
Вы можете указать одно из следующих значений в параметре UpdateLinks , чтобы определить, обновляются ли внешние ссылки (ссылки) после открытия книги.
Значение | Описание |
---|---|
0 | Внешние ссылки (ссылки) не обновляются после открытия книги. |
3 | Внешние ссылки (ссылки) будут обновляться после открытия книги. |
Можно указать одно из следующих значений в параметре Format , чтобы определить характер делимитера для файла.
Значение | Delimiter |
---|---|
1 | Вкладки |
2 | Запятые |
3 | Пробелы |
4 | Semicolons |
5 | Отсутствует |
6 | Настраиваемый символ (см. аргумент Delimiter ) |
Пример
В следующем примере кода открывается книга Analysis.xls, а затем выполняется Auto_Open макрос.
В следующем примере кода лист из другой книги импортируется на новый лист в текущей книге. Sheet1 в текущей книге должен содержать имя пути для импорта книги в ячейке D3, имя файла в ячейке D4 и имя листа в ячейке D5. Импортируемый лист вставляется после sheet1 в текущей книге.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Как вывести список всех открытых книг и легко переключаться между ними в Excel?
Microsoft Excel позволяет открывать несколько книг одновременно, но переключаться между всеми открытыми книгами непросто. Поэтому вы можете перечислить все открытые книги в списке, чтобы легко переключаться между этими книгами в Excel. В этой статье мы покажем вам, как составить список всех открытых книг для удобной навигации в Excel.
Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!
Просто перечислите все открытые книги с VBA
В этом разделе вы узнаете, как использовать код VBA для вывода списка всех открытых книг в Excel.
1. Нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули.
2. Затем скопируйте и вставьте приведенный ниже код VBA в редактор кода.
VBA: список всех открытых имен книг в Excel
3. Запустите код VBA, нажав кнопку F5 ключ. в KutoolsforExcel диалоговом окне укажите ячейку для размещения списка книг, а затем щелкните значок OK кнопка. Смотрите скриншот:
Затем перечисляются все открытые книги с соответствующими листами.
Трудно обрабатывать код VBA? Вы можете добиться этого через третий метод с кликами.
Составьте список всех открытых книг и легко переключитесь на книгу с помощью VBA
Если вы хотите перечислить все книги, чтобы легко переключаться между ними, попробуйте использовать VBA следующим образом:
1. нажмите другой + F11 для открытия Microsoft Visual Basic для приложений окно. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули.
2. Скопируйте и вставьте следующий код VBA в открытое окно модуля.
Код VBA: перечислить все открытые книги и перейти к книге
3. нажмите F5 ключ для запуска кода. Потом KutoolsforExcel появится диалоговое окно со списком всех открытых книг. Если вы хотите перейти к указанной книге, введите имя этой книги в поле и нажмите кнопку OK кнопка. Смотрите скриншот:
Составьте список всех открытых книг и легко переходите к рабочей книге с помощью замечательного инструмента
Перед применением Kutools for Excel, Пожалуйста, сначала скачайте и установите.
Для Панель навигации of Kutools for Excel, все открытые книги будут автоматически перечислены на панели, чтобы вы могли легко перемещаться между всеми открытыми книгами. Вам просто нужно щелкнуть одну из открытых книг, и она сразу же перейдет к этой книге.
Если вы хотите получить бесплатную (30-дневную) пробную версию этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Всем нам приходится - кому реже, кому чаще - повторять одни и те же действия и операции в Excel. Любая офисная работа предполагает некую "рутинную составляющую" - одни и те же еженедельные отчеты, одни и те же действия по обработке поступивших данных, заполнение однообразных таблиц или бланков и т.д. Использование макросов и пользовательских функций позволяет автоматизировать эти операции, перекладывая монотонную однообразную работу на плечи Excel. Другим поводом для использования макросов в вашей работе может стать необходимость добавить в Microsoft Excel недостающие, но нужные вам функции. Например функцию сборки данных с разных листов на один итоговый лист, разнесения данных обратно, вывод суммы прописью и т.д.
Макрос - это запрограммированная последовательность действий (программа, процедура), записанная на языке программирования Visual Basic for Applications (VBA). Мы можем запускать макрос сколько угодно раз, заставляя Excel выполнять последовательность любых нужных нам действий, которые нам не хочется выполнять вручную.
Способ 1. Создание макросов в редакторе Visual Basic
Для ввода команд и формирования программы, т.е. создания макроса необходимо открыть специальное окно - редактор программ на VBA, встроенный в Microsoft Excel.
- В старых версиях (Excel 2003 и старше) для этого идем в меню Сервис - Макрос - Редактор Visual Basic(Toos - Macro - Visual Basic Editor).
- В новых версиях (Excel 2007 и новее) для этого нужно сначала отобразить вкладку Разработчик (Developer) . Выбираем Файл - Параметры - Настройка ленты (File - Options - Customize Ribbon) и включаем в правой части окна флажок Разработчик (Developer) . Теперь на появившейся вкладке нам будут доступны основные инструменты для работы с макросами, в том числе и нужная нам кнопка Редактор Visual Basic(Visual Basic Editor)
:
К сожалению, интерфейс редактора VBA и файлы справки не переводятся компанией Microsoft на русский язык, поэтому с английскими командами в меню и окнах придется смириться:
Макросы (т.е. наборы команд на языке VBA) хранятся в программных модулях. В любой книге Excel мы можем создать любое количество программных модулей и разместить там наши макросы. Один модуль может содержать любое количество макросов. Доступ ко всем модулям осуществляется с помощью окна Project Explorer в левом верхнем углу редактора (если его не видно, нажмите CTRL+R). Программные модули бывают нескольких типов для разных ситуаций:
-
Обычные модули - используются в большинстве случаев, когда речь идет о макросах. Для создания такого модуля выберите в меню Insert - Module. В появившееся окно нового пустого модуля можно вводить команды на VBA, набирая их с клавиатуры или копируя их из другого модуля, с этого сайта или еще откуда нибудь:
Обычный макрос, введенный в стандартный модуль выглядит примерно так:
Давайте разберем приведенный выше в качестве примера макрос Zamena:
С ходу ясно, что вот так сразу, без предварительной подготовки и опыта в программировании вообще и на VBA в частности, сложновато будет сообразить какие именно команды и как надо вводить, чтобы макрос автоматически выполнял все действия, которые, например, Вы делаете для создания еженедельного отчета для руководства компании. Поэтому мы переходим ко второму способу создания макросов, а именно.
Способ 2. Запись макросов макрорекордером
Макрорекордер - это небольшая программа, встроенная в Excel, которая переводит любое действие пользователя на язык программирования VBA и записывает получившуюся команду в программный модуль. Если мы включим макрорекордер на запись, а затем начнем создавать свой еженедельный отчет, то макрорекордер начнет записывать команды вслед за каждым нашим действием и, в итоге, мы получим макрос создающий отчет как если бы он был написан программистом. Такой способ создания макросов не требует знаний пользователя о программировании и VBA и позволяет пользоваться макросами как неким аналогом видеозаписи: включил запись, выполнил операци, перемотал пленку и запустил выполнение тех же действий еще раз. Естественно у такого способа есть свои плюсы и минусы:
- Макрорекордер записывает только те действия, которые выполняются в пределах окна Microsoft Excel. Как только вы закрываете Excel или переключаетесь в другую программу - запись останавливается.
- Макрорекордер может записать только те действия, для которых есть команды меню или кнопки в Excel. Программист же может написать макрос, который делает то, что Excel никогда не умел (сортировку по цвету, например или что-то подобное).
- Если во время записи макроса макрорекордером вы ошиблись - ошибка будет записана. Однако смело можете давить на кнопку отмены последнего действия (Undo) - во время записи макроса макрорекордером она не просто возрвращает Вас в предыдущее состояние, но и стирает последнюю записанную команду на VBA.
Чтобы включить запись необходимо:
- в Excel 2003 и старше - выбрать в меню Сервис - Макрос - Начать запись(Tools - Macro - Record New Macro)
- в Excel 2007 и новее - нажать кнопку Запись макроса (Record macro) на вкладке Разработчик (Developer)
Затем необходимо настроить параметры записываемого макроса в окне Запись макроса:
- Имя макроса - подойдет любое имя на русском или английском языке. Имя должно начинаться с буквы и не содержать пробелов и знаков препинания.
- Сочетание клавиш - будет потом использоваться для быстрого запуска макроса. Если забудете сочетание или вообще его не введете, то макрос можно будет запустить через меню Сервис - Макрос - Макросы - Выполнить(Tools - Macro - Macros - Run) или с помощью кнопки Макросы (Macros) на вкладке Разработчик (Developer) или нажав ALT+F8.
- Сохранить в. - здесь задается место, куда будет сохранен текст макроса, т.е. набор команд на VBA из которых и состоит макрос.:
- Эта книга - макрос сохраняется в модуль текущей книги и, как следствие, будет выполнятся только пока эта книга открыта в Excel
- Новая книга - макрос сохраняется в шаблон, на основе которого создается любая новая пустая книга в Excel, т.е. макрос будет содержаться во всех новых книгах, создаваемых на данном компьютере начиная с текущего момента
- Личная книга макросов - это специальная книга Excel с именем Personal.xls, которая используется как хранилище макросов. Все макросы из Personal.xls загружаются в память при старте Excel и могут быть запущены в любой момент и в любой книге.
После включения записи и выполнения действий, которые необходимо записать, запись можно остановить командой Остановить запись (Stop Recording) .
Запуск и редактирование макросов
Управление всеми доступными макросами производится в окне, которое можно открыть с помощью кнопки Макросы (Macros) на вкладке Разработчик (Developer) или - в старых версиях Excel - через меню Сервис - Макрос - Макросы (Tools - Macro - Macros) :
- Любой выделенный в списке макрос можно запустить кнопкой Выполнить(Run) .
- Кнопка Параметры(Options) позволяет посмотреть и отредактировать сочетание клавиш для быстрого запуска макроса.
- Кнопка Изменить(Edit) открывает редактор Visual Basic (см. выше) и позволяет просмотреть и отредактировать текст макроса на VBA.
Создание кнопки для запуска макросов
Чтобы не запоминать сочетание клавиш для запуска макроса, лучше создать кнопку и назначить ей нужный макрос. Кнопка может быть нескольких типов:
Кнопка на панели инструментов в Excel 2003 и старше
Откройте меню Сервис - Настройка (Tools - Customize) и перейдите на вкладку Команды (Commands) . В категории Макросы легко найти веселый желтый "колобок" - Настраиваемую кнопку (Custom button) :
Перетащите ее к себе на панель инструментов и затем щелкните по ней правой кнопкой мыши. В контекстом меню можно назначить кнопке макрос, выбрать другой значок и имя:
Кнопка на панели быстрого доступа в Excel 2007 и новее
Щелкните правой кнопкой мыши по панели быстрого доступа в левом верхнем углу окна Excel и выберите команду Настройка панели быстрого доступа (Customise Quick Access Toolbar) :
Затем в открывшемся окне выберите категорию Макросы и при помощи кнопки Добавить (Add) перенесите выбранный макрос в правую половину окна, т.е. на панель быстрого доступа:
Кнопка на листе
Этот способ подходит для любой версии Excel. Мы добавим кнопку запуска макроса прямо на рабочий лист, как графический объект. Для этого:
- В Excel 2003 и старше - откройте панель инструментов Формы через меню Вид - Панели инструментов - Формы (View - Toolbars - Forms)
- В Excel 2007 и новее - откройте выпадающий список Вставить (Insert) на вкладке Разработчик (Developer)
Выберите объект Кнопка (Button) :
Затем нарисуйте кнопку на листе, удерживая левую кнопку мыши. Автоматически появится окно, где нужно выбрать макрос, который должен запускаться при щелчке по нарисованной кнопке.
Создание пользовательских функций на VBA
Создание пользовательских функций или, как их иногда еще называют, UDF-функций (User Defined Functions) принципиально не отличается от создания макроса в обычном программном модуле. Разница только в том, что макрос выполняет последовательность действий с объектами книги (ячейками, формулами и значениями, листами, диаграммами и т.д.), а пользовательская функция - только с теми значениями, которые мы передадим ей как аргументы (исходные данные для расчета).
Чтобы создать пользовательскую функцию для расчета, например, налога на добавленную стоимость (НДС) откроем редактор VBA, добавим новый модуль через меню Insert - Module и введем туда текст нашей функции:
Обратите внимание, что в отличие от макросов функции имеют заголовок Function вместо Sub и непустой список аргументов (в нашем случае это Summa). После ввода кода наша функция становится доступна в обычном окне Мастера функций (Вставка - Функция) в категории Определенные пользователем (User Defined) :
После выбора функции выделяем ячейки с аргументами (с суммой, для которой надо посчитать НДС) как в случае с обычной функцией:
Как переключаться между несколькими книгами?
В нашей повседневной работе мы можем работать с несколькими книгами, переключение между двумя книгами может быть для нас легким, но, если есть несколько открытых книг, которые необходимо переключать время от времени, как вы можете переключаться между этими несколькими открытыми книгами? ?
Переключайтесь между несколькими открытыми книгами с помощью команды Switch Windows
Есть команда под названием Переключить Windows в Excel с его помощью вы можете быстро переключаться между несколькими книгами.
В одной из открытых книг щелкните Смотреть > Переключить Windows, а затем из Переключить Windows раскрывающийся список, выберите книгу, которую вы хотите переключить. Смотрите скриншот:
Переключайтесь между несколькими открытыми книгами с помощью панели быстрого доступа
С помощью описанного выше метода вам нужно снова и снова переключать вкладки, когда вы выполняете другие операции, здесь я могу помочь вам добавить Переключить Windows команду Настройка панели быстрого доступа, и это сократит количество кликов. Пожалуйста, сделайте следующее:
1. В открывшейся книге щелкните значок Настройка панели быстрого доступа в окне Excel, а затем выберите Дополнительные команды из меню, см. снимок экрана:
2. В Параметры Excel диалоговое окно, нажмите Панель быстрого доступа из левой панели. Затем выберите Все команды из раскрывающегося списка в разделе Выберите команды из, прокрутите вниз и выберите Переключить Windows, А затем нажмите Добавить >> кнопку, чтобы переместить эту команду в правое окно. Смотрите скриншот:
3. Затем нажмите OK кнопку, и вы увидите Переключить Windows команда была отображена в Панель быстрого доступа, и вы можете легко переключаться между книгами одним щелчком мыши.
Переключение между несколькими открытыми книгами с помощью сочетаний клавиш
Если вам нравится использовать клавиатуру, здесь также есть сочетания клавиш для быстрого переключения между несколькими книгами.
Удержание Ctrl + Tab вместе клавиши могут помочь вам перейти от одного окна к следующему. Если у вас только два окна, этот метод будет быстрее. Однако с более чем двумя открытыми книгами этот метод работает не очень хорошо, потому что он будет циклически перебирать каждую открытую книгу.
Переключение между несколькими открытыми книгами с помощью kutools for Excel
Если у вас есть Kutools for Excel, С его Навигация утилита, вы можете быстро переключаться между несколькими книгами и листами.
После установки Kutools for Excel, выполните следующие действия:
1. Нажмите Кутулс > Навигация, см. снимок экрана:
2. В Навигация панели, нажмите Рабочая тетрадь и лист значок, и вы увидите, что все открытые книги перечислены в списке, вы можете быстро и удобно переключаться между ними.
Внимание: В Навигация панели, вы также можете отсортировать открытые книги в порядке возрастания или убывания с помощью и иконки.
Переключение между несколькими открытыми книгами с помощью вкладки Office
Если на вашем компьютере установлена вкладка Office, она помогает просматривать и редактировать несколько файлов в одном окне с вкладками, чтобы узнать больше о вкладке Office Вкладка Office и скачать (бесплатная пробная версия через 30 дней).
После установки Office Tabи откройте несколько книг, вы увидите, что все имена книг были отображены в одном окне с вкладками, как показано на следующем снимке экрана, а затем вы можете быстро переключаться между ними одним щелчком мыши.
Демонстрация: переключение между несколькими открытыми книгами
Kutools for Excel и Office Tab полезные инструменты для большинства пользователей Microsoft. Нажмите, чтобы бесплатно попробовать их!
Как переключаться между двумя листами вперед и назад в Excel?
Предположим, у вас есть книга, содержащая множество листов, но часто вам просто нужно перемещаться между двумя конкретными несмежными листами, такими как Sheet1 и Sheet 30. Как вы могли быстро и легко переключаться между этими двумя несмежными листами в Excel?
Вкладка Office позволяет редактировать и просматривать в Office с вкладками и значительно упрощает работу .
- Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
- Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
- Инструменты слияния : Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
- Разделить инструменты : Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
- Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона ; Отправляйте персонализированные электронные письма нескольким получателям массово.
- Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий .
- Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.
Переключение между двумя несмежными листами с кодом VBA
Удивительный! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
Экономьте 50% своего времени и сокращайте тысячи щелчков мышью каждый день!
Следующий код VBA может помочь вам перемещаться между двумя конкретными рабочими листами, пожалуйста, сделайте следующее:
1. Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.
2. А затем дважды щелкните Эта рабочая тетрадь в Обозреватель проекта чтобы открыть модуль, см. снимок экрана:
Внимание: Если Обозреватель проекта не отображается при открытии Microsoft Visual Basic для приложений окна, вы можете нажать Смотреть И выберите Обозреватель проекта чтобы открыть его, см. снимок экрана:
3. А затем вставьте следующий код в Окно модуля.
VBA: переключение между двумя несмежными листами
4. И щелкните два листа (Sheet1 и Sheet30), между которыми вы хотите переключаться один за другим.
5, Затем нажмите F5 для запуска этого кода, если вы нажмете один раз, отобразится Лист 1, и нажмите еще раз, Лист 30 будет переключен. Таким образом, вы можете переключать эти два листа назад и вперед, нажимая кнопку F5 ключ.
Переключение между двумя несмежными листами с помощью Kutools for Excel
Возможно, приведенный выше код для вас несколько сложен, здесь я могу представить вам простой способ выполнить эту задачу одним щелчком мыши.
Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.
Когда вы установили Kutools for Excel, выполните следующие действия:
1. Откройте книгу, которую хотите использовать. А затем нажмите Кутулс > Навигация, см. снимок экрана:
2, И Область переходов отобразится, затем щелкните Листы меню.
3. Затем вы можете щелкнуть два листа, между которыми хотите переключаться, и затем, когда вы нажмете в Панель навигации, два последних нажатых листа будут переключаться вперед и назад.
Внимание: Вы также можете переключать два листа в двух книгах.
Читайте также: