Remkomplekty.ru

IT Новости из мира ПК
192 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как открыть vba в excel 2020

How to dou

УРОК 4. Макросы. Пишем код полностью с нуля. Академия Excel

Table of Contents:

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

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

Одна строка кода VBA может быть такой, какой вам нужно. Тем не менее, вы можете использовать символы продолжения строки, чтобы разбить длинные строки кода. Чтобы продолжить одну строку кода (также называемую оператором ) от одной строки до следующей, завершите первую строку пробелом, за которым следует символ подчеркивания (_). Затем продолжите утверждение на следующей строке. И не забывайте о пространстве. Символ подчеркивания, которому не предшествует пробел, не будет выполнять эту работу.

Вот пример одного оператора, разбитого на три строки:

Этот оператор будет работать точно так же, если он был введен в одну строку (без строки -кондиционные символы). Обратите внимание, что вторая и третья строки этого выражения имеют отступ. Отступы необязательны, но это помогает прояснить тот факт, что эти строки не являются отдельными утверждениями.

Инженеры с белым покрытием, которые проектировали VBE, ожидали, что люди будут ошибаться. Поэтому VBE имеет несколько уровней отмены и повтора. Если вы удалили оператор, которого не нужно, нажмите кнопку «Отменить» на панели инструментов (или нажмите Ctrl + Z), пока оператор не появится снова. После отмены вы можете использовать кнопку «Повторить», чтобы выполнить отмененные вами изменения.

Готовы ли вы ввести код реального реального времени? Выполните следующие шаги:

Создайте новую книгу в Excel.

Нажмите Alt + F11, чтобы активировать VBE.

Нажмите имя новой книги в окне проекта.

Выберите «Вставить» → «Модуль», чтобы вставить модуль VBA в проект.

Введите следующий код в модуле:

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

F5 является ярлыком для команды Run → Run Sub / UserForm.Если вы правильно ввели код, Excel выполнит эту процедуру, и вы можете ответить на простое диалоговое окно. Помните, что текст в диалоговом окне будет другим.

Процедура GuessName отображает это диалоговое окно.

Когда вы вводите код, указанный в шаге 5, вы можете заметить, что VBE вносит некоторые изменения в текст, который вы вводите. Например, после ввода инструкции Sub, VBE автоматически вставляет инструкцию End Sub. И если вы опустите пространство до или после знака равенства, VBE вставляет вам пространство. Кроме того, VBE изменяет цвет и заглавные буквы некоторого текста. Это все нормально. Это просто способ VBE держать вещи аккуратными и читаемыми.

Если вы выполнили предыдущие шаги, вы просто написали процедуру VBA Sub, также известную как макрос . Когда вы нажимаете F5, Excel выполняет код и следует инструкциям. Другими словами, Excel оценивает каждое утверждение и делает то, что вы ему сказали. (Не позволяйте этой новообретенной власти идти в вашу голову.) Вы можете выполнять этот макрос сколько угодно раз — хотя он имеет тенденцию терять свою привлекательность через несколько десятков раз.

Для записи этот простой макрос использует следующие понятия:

Определение процедуры Sub (первая строка)

Присвоение значений переменным (Msg и Ans)

Объединение (объединение) a string (с помощью оператора &)

Использование встроенной функции VBA (MsgBox)

Использование встроенных констант VBA (vbYesNo, vbNo и vbYes)

Редактор Visual Basic в Excel

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

Запуск редактора Visual Basic

Простейший способ запустить редактор Visual Basic в Excel – нажать комбинацию клавиш Alt+F11 (то есть нажать клавишу Alt и, удерживая её, нажать клавишу F11). После этого откроется окно редактора Visual Basic, как показано на картинке ниже. Имейте ввиду, что окно Excel остается открытым и находится позади окна редактора.

Окна редактора Visual Basic

В процессе работы в редакторе Visual Basic в Excel могут быть открыты различные окна. Управление окнами осуществляется в меню View, которое находится в верхней части окна редактора VBA. Ниже дано описание отдельных окон.

Окно проекта (Project)

Окно Project открывается в левой части редактора VBA (показано на картинке выше). В этом окне для каждой открытой рабочей книги создаётся проект VBA (VBA Project). Проект VBA – это набор всех объектов и модулей VBA, привязанных к текущей книге. Изначально в него входят:

  • Объект ЭтаКнига (ThisWorkbook), привязанный к книге Excel;
  • Объекты Лист (Sheet), привязанные к каждому листу текущей рабочей книги Excel.

Самостоятельно в проект можно добавить объекты Userform, Module и Class Module. Если Вы посмотрите на картинку выше, то увидите, что в проект VBA для книги Book1.xlsm добавлен объект Module с названием Module1.

Читать еще:  Excel vba примечание

Вот как можно создать новый объект Userform, Module или Class Module:

  • В окне Project выберите рабочую книгу, в которую нужно добавить объект, и кликните по ней правой кнопкой мыши.
  • В появившемся меню кликните Insert и в раскрывшемся меню выберите Userform, Module или Class Module.

Для каждого из описанных выше объектов предусмотрено специальное окно, в котором будет создаваться и храниться новый код VBA. Порядок при этом такой:

  • Код, который относится к рабочей книге, должен быть введён в соответствующий объект ЭтаКнига (ThisWorkbook);
  • Код, который относится к рабочему листу, должен быть введён в соответствующий объект Лист (Sheet);
  • Код более общего характера должен быть введён в Module;
  • Код для нового объекта должен быть введён в Class Module;
  • Если нужно создать диалоговое окно для взаимодействия с пользователем, то можно использовать Userform.

Окно кода (Code)

Двойной щелчок мышью по любому объекту в окне Project открывает соответствующее окно Code, предназначенное для ввода кода VBA с клавиатуры. На одном из приведённых выше рисунков показано окно кода для Module1.

По мере ввода кода VBA в окно Code, редактор Visual Basic следит за правильностью ввода, ищет ошибки в коде и выделяет код, который требует исправления.

Окно свойств (Properties)

В окне Properties перечислены свойства объекта, который в момент создания (не в процессе выполнения программы) выделен в окне проекта. Эти свойства могут быть различными в зависимости от типа выделенного объекта (лист, книга, модуль и другие).

Окно отладчика (Immediate)

Окно Immediate можно отобразить в редакторе Visual Basic через меню View > Immediate Window или нажатием комбинации клавиш Ctrl+G. Это окно помогает при отладке кода. Оно выполняет роль области вывода для отладки выражений и позволяет вычислять отдельные выражения или выполнять строки кода по одной.

Например, введите выражение “?j” и нажмите Enter – в результате будет выведено текущее значение переменной j.

Окно переменных (Locals)

Чтобы открыть окно Locals, нажмите Locals Window в меню View редактора Visual Basic. В этом окне отображаются все переменные, объявленные в текущей процедуре. Окно делится на столбцы, в которых содержатся имя, значение и тип каждой переменной, и эта информация обновляется автоматически в ходе выполнения программы. Окно Locals очень полезно при отладке кода VBA.

Окно отслеживания (Watches)

Окно Watches также очень помогает при отладке кода VBA, так как в нём можно увидеть значение, тип и контекст любого отслеживаемого выражения, которое задаст пользователь. Чтобы открыть окно Watches, нажмите Watch Window в меню View редактора Visual Basic. Также окно Watches будет открыто автоматически, если задать отслеживаемое выражение.

Чтобы задать отслеживаемое выражение, нужно:

  1. Выделить выражение в редактируемом коде VBA.
  2. В меню Debug редактора VBA нажать Quick Watch.
  3. Нажать Add.

Кроме рассмотренных, в меню редактора Visual Basic в Excel существует ещё множество параметров и команд, используемых при создании, выполнении и отладке кода VBA.

Установка и обновление надстройки VBA-Excel

Системные требования

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

Макросы должны быть включены.

Некоторые функции (КУРС, ПЕРЕВОД, СКЛОНЕНИЕ) требуют наличия интернета.

Установка

  1. Скачайте установочный файл программы, сохранив его в любое удобное место.
  2. Откройте скачанный файл Excel.
  3. Если файл Excel открылся в режиме защищенного просмотра, то разрешите редактирование файла, нажав кнопку Разрешить редактирование под вкладками меню.

  1. Если макросы в Excel не были включены отобразится инструкция (лист Как установить макросы), которая поможет их включить. С инструкцией по включению макросов можно также ознакомиться на этой странице.
  2. Нажмите кнопку Установить / обновить, программа автоматически установится.

Обновление

Проверка обновлений выполняется автоматически раз в сутки (при открытии Excel). Вы также можете проверить наличие обновлений вручную выполнив команду Вкладка VBA-Excel -> Справка -> Проверить обновления.

При наличие обновления программа предложит обновиться

Нажмите Да если хотите выполнить обновление. Откроется список изменений, которые были внесены с момента последней установки программы.

Нажмите Обновить, программа скачает и откроет новую версию программы.

Ручная установка / обновление надстройки

В 90% случаях процесс установки и обновления автоматический. Иногда сторонние программы блокируют процесс установки. В этих случаях можно установить/обновить программу вручную. Для этого:

  1. Если установка не проводилась пропустите первые 3 пункта. Откройте параметры Excel.

  1. Перейдите в список надстроек.

  1. Отключите надстройку VBA-Excel сняв с нее выбор и нажав ОК.

  1. Скачайте и откройте актуальную версию программы.
  2. Откройте меню Файл и выберите пункт Сохранить как (можно также воспользоваться сочетанием клавиш Ctrl + Shift + S).
  3. Выберите тип файла Надстройка Excel (*.xlam)

Знакомство с программированием в Excel

Добавление на ленту вкладки разработчика

Написание кода Ваших процедур и редактирование макросов производится в редакторе Visual Basic, который доступен с вкладки «Разработчик». Данная вкладка по умолчанию скрыта. Для ее отображения необходимо выполнить следующие действия:

Для Excel 2007. Зайдите в параметры Excel, используя кнопку Office, и в «основных параметрах работы с Excel» установите галочку на пункте «Показывать вкладку Разработчик на ленте».

Читать еще:  Excel vba workbooks open

Для Excel 2010 и 2013. В параметрах Excel нужно выбрать пункт «Настроить ленту» и в категории основные вкладки установить галочку для вкладки «Разработчик».

Знакомство с редактором Visual Basic в Excel

Чтобы попасть в редактор кода, кликните на вкладке разработчика в области «Код» по кнопке «Visual Basic».

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

№1 на изображении. Кнопка сохранить. Сохраняет текущую книгу Excel. Необходимо быть внимательнее при работе с несколькими книгами, так как текущей считается та, которая выделена в окне проектов (№3 на изображении).

№2 на изображении. Кнопки запуска, остановки и прерывания выполнения кода. Во время запуска начинает выполняться код той процедуры, на которой размещен курсор. Данные кнопки дублируются вкладкой «Run» основного меню редактора.

№3 на изображении. Окно управления проектами VBA открытых книг (Project Explorer) и кнопка, отображающая это окно.

№4 на изображении. Кнопка, отображающая окно свойств объектов (Properties Window), выбранных в окне №3, и элементов пользовательских форм (работа с объектами, их свойствами и методами будет рассмотрена в отдельной статье этой категории).

№5 на изображении. Кнопка вызова окна объектов (Object Browser). В нем описаны все доступные для работы объекты, их свойства и методы.

Кнопки №3, №4 и №5 так же доступны на вкладке «View» главного меню редактора. Там же можно вызвать другие полезные для работы окна, которые не будут рассмотрены в этом материале.

Написание простой процедуры на Visual Basic for Application

Код любой процедуры (подпрограммы) располагается в модуле, поэтому необходимо его добавить, чтобы приступить к программированию. Выберите пункт «Module» на вкладке «Insert» основного меню редактора VBA. В основной области редактора (на изображении имеет серый фон) должно появиться новое окно кода – Имя_книги – имя_модуля (Code), а в окне управления проектами (№3) к дереву выбранного проекта добавится вновь созданный модуль.

Добавьте в модуль следующий код:

Данная процедура выводит на экран диалоговое окно с сообщением «Привет пользователь!». Протестируйте ее работу, нажав кнопку Rub Sub (№2 на изображении) или вызвав как обычный макрос.

Теперь более подробно разберем приведенный код.

Любая процедура начинается со строки объявления, состоящей из оператора Sub (сокращение от Subprogram), после которого следует имя подпрограммы. За именем следует перечень аргументов, заключенный в скобки.

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

В этом примере аргументы не используются, поэтому указываются пустые скобки.

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

Последняя строка содержит оператор End с последующим ключевым словом Sub и сообщает о завершении процедуры.

Учимся пользоваться Object Browser

Выше была упомянута функция MsgBox, но ее возможности полностью не рассмотрены. Это хороший случай, чтобы научиться использовать браузер объектов (№5 на изображении окна редактора VBA).

Нажмите кнопку на панели или клавишу F2, чтобы отобразить Object Browser:

Выпадающий список №1 содержит перечень всех подключенных библиотек. Используйте его только в том случае, если точно знаете, к какой библиотеке относится изучаемый класс, функция и т.д. (подключить или отключить любую из доступных библиотек можно, выбрав пункт «References» на вкладке «Tools» главного меню редактора VBA).

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

Поле №2 предназначено для поиска свойств, методов, классов подключенных библиотек.

Результаты поиска отображаются в поле №3 и представляют из себя таблицу с тремя столбцами: библиотека, класс и член класса.

Поле №4 содержит перечень всех классов, выбранных в поле №1 библиотек.

В области №5 содержится список всех членов класса, выбранного в поле №4.

Поле №6 содержит краткую справку о выделенном результате поиска, классе или члене класса.

Примечание: библиотеки, классы, функции и процедуры (методы), свойства и т.п. в Object Browser имеют различные обозначения, представленные набором пиктограмм. Краткая справка (поле №6) всегда указывает какой тип элемента выделен. Обращайте на это внимание, чтобы в дальнейшем лучше ориентироваться в работе с объектами.

Примечание: Понятие объекта не относится к теме данной статьи и будет рассмотрено в следующих материалах.

Теперь найдем функцию MsgBox с помощью браузера объектов. В поле поиска (№2) впишите ее название и кликните по кнопке с изображением бинокля. В поле результатов поиска выделите строку со значением MsgBox в столбце «Member». В поле №6 появилась краткая информация, сообщающая нам, что выбранный член является функцией, имеет перечень аргументов, возвращает результат типа VbMsgBoxResult, относиться в классу Interaction библиотеки VBA.

Для получения полной справки кликните по кнопке с изображением вопросительного знака. В зависимости от версии Excel, Вас перенаправить на файл справки или сайт с документацией от Microsoft.

Читать еще:  Excel определить цвет ячейки

Изучите самостоятельно возможности функции MsgBox.

Ссылка на процедуру VBA

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

Для лучшего понимая рассмотрим пример (в примере используется псевдокод):

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

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

Файл XLSM – как открыть, редактировать и конвертировать формат

Файл с XLSM расширением является Macro-Enabled файлом Excel Workbook, созданным в Excel 2007 или более поздней версии. Файлы XLSM фактически идентичны файлам электронной таблицы формата Microsoft Open Open XML (XLSX), с той лишь разницей, что файлы XLSM будут выполнять встроенные макросы, которые программируются на языке Visual Basic для приложений (VBA).

Как и в случае файлов XLSX, формат файлов Microsoft XLSM использует архитектуру XML и сжатие ZIP для хранения таких вещей, как текст и формулы в ячейках, которые организованы в строки и столбцы. Эти строки и столбцы могут быть каталогизированы на отдельных листах в одной книге XLSM.

Как открыть файл XLSM

Файлы XLSM могут хранить и выполнять вредоносный код с помощью макросов. Будьте особенно внимательны при открытии таких исполняемых форматов файлов, которые вы получили по электронной почте или загрузили с веб-сайтов, с которыми вы не знакомы.

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

Вы можете использовать файлы XLSM без Excel с бесплатными программами, такими как OpenOffice Calc и Kingsoft Spreadsheets. Другим примером бесплатной альтернативы Microsoft Office, которая позволяет редактировать и сохранять данные в формате XLSM, является Microsoft Excel Online.

Google Sheets – это ещё один способ открыть и отредактировать файл XLSM онлайн. Подробности о том, как это сделать, приведены ниже.

Quattro Pro, часть Corel WordPerfect Office, также поддерживает файлы XLSM, но это не бесплатно. OfficeSuite Professional для Android и iOS – это способ работы с файлами XLSM на мобильных устройствах.

Как конвертировать файл XLSM

Лучший способ преобразовать файл XLSM – открыть его в одном из приведенных выше редакторов XLSM, а затем сохранить открытый файл в другом формате. Например, файл XLSM, открытый в Excel, можно преобразовать в XLSX, XLS, PDF, HTM, CSV и другие форматы.

Другой способ конвертировать файл XLSM – использовать бесплатный конвертер файлов. Один из способов сделать это онлайн – это FileZigZag, который поддерживает преобразование XLSM во многие из тех же форматов, которые поддерживаются в Microsoft Excel, но также и XLSM в ODS, XLT, TXT, XHTML и некоторые менее распространенные, такие как OTS, VOR STC и UOS.

Файлы XLSM также можно преобразовать в формат, который можно использовать с Google Sheets, представляющий собой программу для работы с электронными таблицами Google. Для этого вам необходимо войти в свою учетную запись Google (это те же данные, которые вы используете для доступа к Gmail, YouTube, Google Фото и т.д.) или создать новую учетную запись Google, если у вас её еще нет.

  1. Загрузите файл XLSM в свою учетную запись Google Диска с помощью параметра «Создать»«Загрузка файла». Вместо этого выберите «Загрузка папки», если вам нужно загрузить всю папку файлов XLSM.
  2. Щелкните правой кнопкой мыши файл XLSM в Google Диске и выберите Открыть с помощьюGoogle Sheets.
  3. Файл XLSM автоматически преобразуется в формат, который позволяет читать и использовать файл в Google Sheets.

Оригинальный и конвертированный файлы теперь будут доступны в вашем аккаунте Google Диска. Тот, который можно редактировать в Google Sheets, помечается зеленым значком со смещенным центром белого креста.

Вы даже можете использовать Google Sheets для преобразования файла XLSM в другой формат. Открыв файл в Google Sheets, выберите «Файл»«Загрузить как», чтобы загрузить файл XLSM в виде файла XLSX, ODS, PDF, HTML, CSV или TSV.

Дополнительная информация о файлах XLSM

Макросы в файлах XLSM не запускаются по умолчанию, поскольку Excel отключает их. У Microsoft есть объяснение по включению и отключению макросов в файлах Office, если вам нужна помощь.

Файл Excel с аналогичным расширением – это файл XLSMHTML, который аналогичен файлам XLS, но представляет собой архивированный файл электронной таблицы MIME HTML, используемый в более старых версиях Excel для отображения данных электронной таблицы в HTML. Более новые версии Excel используют MHTML или MHT для публикации документов Excel в HTML.

Файлы XLSX также могут содержать макросы, но Excel не будет использовать их, если файл не преобразован в формат XLSM.

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector
×
×