Как сделать общий макрос excel для всей системы?

Как использовать Личную Книгу Макросов

Если вы еще не знакомы с макросами в Excel, то я вам даже немного завидую. Ощущение всемогущества и осознание того, что ваш Microsoft Excel можно прокачивать почти до бесконечности, которые придут к вам после знакомства с макросами — приятные чувства.

Однако, эта статья для тех, кто уже «познал мощь» и начал использовать макросы (чужие или написанные самостоятельно — не важно) в своей повседневной работе.

Макрос — это код (несколько строк) на языке Visual Basic, которые заставляют Excel сделать то, что вам нужно: обработать данные, сформировать отчет, скопипастить много однообразных таблиц и т.п. Вопрос — где эти несколько строк кода хранить? Ведь от того, где макрос хранится будет потом зависеть где он сможет (или не сможет) работать.

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

А если макрос должен быть относительно универсален и нужен в любой книге Excel — как, например, макрос для конвертирования формул в значения? Не копировать же его код на Visual Basic каждый раз в каждую книгу? Кроме того, рано или поздно, почти любой пользователь приходит к мысли, что неплохо было бы сложить все макросы в одну коробку, т.е. иметь их всегда под рукой. И может быть даже запускать не вручную, а сочетаниями клавиш? И вот тут может здорово помочь Личная Книга Макросов (Personal Macro Workbook).

Как создать Личную Книгу Макросов

На самом деле, Личная Книга Макросов (ЛКМ) — это обычный файл Excel в формате двоичной книги (Personal.xlsb), который автоматически в скрытом режиме открывается одновременно с Microsoft Excel. Т.е. когда вы просто запускаете Excel или открываете любой файл с диска, на самом деле открываются два файла — ваш и Personal.xlsb, но второго мы не видим. Таким образом все макросы, которые хранятся в ЛКМ оказываются доступы для запуска в любой момент, пока открыт Excel.

Если вы еще ни разу не пользовались ЛКМ, то изначально файл Personal.xlsb не существует. Самый легкий способ его создать — это записать рекордером какой-нибудь ненужный бессмысленный макрос, но указать в качестве места для его хранения Личную Книгу — тогда Excel будет вынужден автоматически ее для вас создать. Для этого:

  1. Откройте вкладку Разработчик (Developer) . Если вкладки Разработчик не видно, то ее можно включить в настройках через Файл — Параметры — Настройка ленты (Home — Options — Customize the Ribbon) .
  2. На вкладке Разработчик нажмите кнопку Запись макроса (Record Macro) . В открывшемся окне выберите Личную книгу макросов (Personal Macro Workbook) как место для хранения записанного кода и нажмите OK:

  • Остановите запись кнопкой Остановить запись (Stop Recording) на вкладке Разработчик (Developer)
  • Проверить результат можно, нажав на кнопку Visual Basic там же на вкладке Разработчик — в открывшемся окне редактора в левом верхнем углу на панели Project — VBA Project должен появиться наш файл PERSONAL.XLSB. Его ветку которого можно развернуть плюсиком слева, добравшись до Module1, где и хранится код только что записанного нами бессмысленного макроса:

    Читать еще:  Как сделать одинаковые значения в excel?

    Поздравляю, вы только что создали себе Личную Книгу Макросов! Только не забудьте нажать на кнопку сохранения с дискеткой в левом верхнем углу на панели инструментов.

    Как использовать Личную Книгу Макросов

    Дальше все просто. Любой нужный вам макрос (т.е. кусок кода, начинающийся на Sub и заканчивающийся End Sub ) можно смело копировать и вставлять либо в Module1, либо в отдельный модуль, добавив его предварительно через меню Insert — Module. Хранить все макросы в одном модуле или раскладывать по разным — исключительно вопрос вкуса. Выглядеть это должно примерно так:

    Запустить добавленный макрос можно в диалоговом окне, вызываемом с помощью кнопки Макросы (Macros) на вкладке Разработчик:

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

    Кроме обычных макросов-процедур в Личной Книге можно хранить и пользовательские макро-функции (UDF = User Defined Function) . В отличие от процедур, код функций начинаются с оператора Function или Public Function , а заканчиваются на End Function :

    Код необходимо аналогичным образом скопировать в любой модуль книги PERSONAL.XLSB и затем можно будет вызвать функцию обычным образом, как любую стандарную функцию Excel, нажав кнопку fx в строке формул и выбрав функцию в окне Мастера Функций в категории Определенные пользователем (User Defined) :

    Примеры таких функций можно в больших количествах найти в интернете или здесь же на сайте (сумма прописью, приблизительный текстовый поиск, ВПР 2.0, конвертация кириллицы в транслит и т.п.)

    Где хранится Личная Книга Макросов

    Если вы будете использовать Личную Книгу Макросов, то рано или поздно у вас возникнет желание:

    • поделиться своими накопленными макросами с другими пользователями
    • скопировать и перенести Личную Книгу на другой компьютер
    • сделать ее резервную копию

    Для этого нужно будет найти файл PERSONAL.XLSB на диске вашего компьютера. По умолчанию, этот файл хранится в специальной папке автозапуска Excel, которая называется XLSTART. Так что все, что нужно — это добраться до этой папки на нашем ПК. И вот тут возникает небольшая сложность, потому что местоположение этой папки зависит от версии Windows и Office и может различаться. Обычно это один из следующих вариантов:

    • C:Program FilesMicrosoft OfficeOffice12XLSTART
    • C:Documents and SettingsComputerApplication DataMicrosoftExcelXLSTART
    • C:Users имя-вашей-учетной-записи AppDataRoamingMicrosoftExcelXLSTART

    Как вариант, можно спросить о положении этой папки сам Excel с помощью VBA. Для этого в редакторе Visual Basic (кнопка Visual Basic на вкладке Разработчик) нужно открыть окно Immediate сочетанием клавиш Ctrl+G, ввести туда команду ? Application.StartupPath и нажать на Enter:

    Полученный путь можно скопировать и вставить в верхнюю строку окна Проводника в Windows и нажать Enter — и мы увидим папку с нашим файлом Личной Книги Макросов:

    Читать еще:  Как сделать формулу в excel чтобы отображались значения?

    И несколько практических нюансов вдогон:

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

    Создание и сохранение всех макросов в одной книге

    Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

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

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

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

    Создание и обновление личной книги макросов

    На вкладке Разработчик в группе Код нажмите кнопку Запись макроса.

    В диалоговом окне запись макроса введите понятное имя макроса в поле имя макроса . Убедитесь в том, что имя не используется в качестве пробелов.

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

    Нажмите кнопку ОК.

    Выполните действия, которые нужно записать.

    На вкладке Разработчик в группе Код нажмите кнопку Остановить запись.

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

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

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

    Общий доступ к макросам

    Если вы хотите скопировать макросы из личной книги в другую книгу или наоборот, это можно сделать в редакторе Visual Basic (VBE). Чтобы запустить редактор Visual Basic в Excel, нажмите клавиши ALT + F11. Дополнительные сведения о копировании макросов из одной книги в другую см. в статье Копирование модуля макроса в другую книгу.

    Если вы хотите поделиться своим файлом личных файлов с другими пользователями, вы можете скопировать его в папку XLSTART на других компьютерах. В Windows 10, Windows 7 и Windows Vista эта книга сохраняется в папке c appdatalocaltemp. намеаппдаталокалмикрософтексцелкслстарт. В Microsoft Windows XP эта книга сохраняется в папке «C:Documents and Settings Намеаппликатион Датамикрософтексцелкслстарт». Книги, хранящиеся в папке XLStart, открываются автоматически при запуске Excel, а код, хранящийся в личной книге макросов, будет отображаться в диалоговом окне макрос.

    Читать еще:  Как сделать стартовую страницу в excel?

    Если у вас есть только один или несколько макросов, к которым вы хотите предоставить доступ другим пользователям, вы можете отправить им книгу, содержащую их, в сообщении электронной почты. Вы также можете сделать книгу доступной на общем сетевом диске или в библиотеке SharePoint Services.

    Чтобы создать личную книгу, необходимо сначала создать макрос и сохранить его в личной книге макросов. Прежде чем приступить к работе, убедитесь в том, что вкладка разработчик доступна на ленте Excel. Для этого:

    В меню Excel выберите пункт Параметры. _гт_ ленты _амп_ Toolbar. В категории настроить ленту в списке Основные вкладки установите флажок разработчик , а затем нажмите кнопку сохранить.

    Создание и обновление личной книги макросов

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

    На вкладке Разработчик нажмите кнопку Запись макроса.

    В диалоговом окне запись макроса введите понятное имя макроса в поле имя макроса . Убедитесь в том, что имя не используется в качестве пробелов.

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

    Нажмите кнопку ОК.

    Выполните действия, которые нужно записать.

    На вкладке Разработчик щелкните Остановить запись.

    Сохраните изменения, закройте книгу, а затем закройте Excel.

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

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

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

    Общий доступ к макросам

    Если вы хотите скопировать макросы из личной книги в другую книгу или наоборот, это можно сделать в редакторе Visual Basic (VBE). Чтобы запустить редактор Visual Basic в Excel, на вкладке разработчик нажмите кнопку Visual Basic . Дополнительные сведения о копировании макросов из одной книги в другую см. в статье Копирование модуля макроса в другую книгу.

    Если вы хотите поделиться своим файлом личных файлов с другими пользователями, вы можете скопировать его в корневую папку Excel на других компьютерах. Папка для Mac находится в домашней папке

    Если у вас есть только один или несколько макросов, к которым вы хотите предоставить доступ другим пользователям, вы можете отправить им книгу, содержащую их, в сообщении электронной почты. Вы также можете сделать книгу доступной на общем сетевом диске или в библиотеке SharePoint Services.

    Дополнительные сведения

    Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

    Get expert help now

    Don’t have time to figure this out? Our expert partners at Excelchat can do it for you, 24/7.

    Ссылка на основную публикацию
    Adblock
    detector