Как сохранить макросы Excel
Безопасность макросов Excel — это защита от вирусов, которые могут проникнуть в компьютер вместе с макросами. Безопасность макросов значительно изменилась со времени выхода в свет Excel 2003, поэтому в рамках данной темы особенности старых и новых версий Excel будут рассмотрены раздельно:
-
Безопасность макросов в современных версиях Excel (2007 и более новых)
Как на VBA сохранить файл Excel с названием, взятым из ячейки? | — IT-блог для начинающих
- В разделе Надёжные расположения (Trusted Locations) нажмите кнопку Добавить новое расположение (Add new location).
- Выберите папку, которую нужно объявить надёжным расположением и нажмите ОК.
Если вдруг нужно реализовать без привязки к конкретным ячейкам, например, значения хранятся в определённых столбцах, но конкретная строка неизвестна Вам заранее. Например, у меня несколько строк со значениями, и какие конкретно значения взять за основу названия файла, я хочу указывать самостоятельно, непосредственно перед сохранением, но при этом не редактировать код процедуры.
Excel Macro Tips – Как автоматически запускать макрос при открытии книги Excel
, как получить макрос автоматического запуска на самом деле просто назвать этот макрос Auto_Open в книге, которую вы хотите открыть. Для этого выполните следующие действия:
Сначала убедитесь, что вкладка «Разработчик» включена. Вы можете получить предупреждение о безопасности макросов, тогда вы должны установить уровень безопасности для всех макросов.
- Разработчик Bookmark
- Код skupiny
- Макрос безопасности
- Хит разрешить все макросы (рекомендует отменить любой из параметров «Отключить все макросы», когда вы закончите работу с макросами, чтобы предотвратить опасный код, который работает без уведомления)
- Откройте книгу, которую вы хотите сохранить макрос в
- Hit Macro Record
- Введите имя Auto_Open в названии макроса
- В списке Сохранить макрос – вам нужно решить, где будет храниться макрос
Примечание. Если вы хотите, чтобы ваш макрос был доступен каждый раз при открытии Excel, вы должны сохранить макрос в Личной книге макросов. Когда вы выбираете эту опцию, Excel больше не создается.) Эта рабочая книга и сохраняет макрос в этом месте, этот макрос является рабочей книгой по умолчанию с именем Personal.xlsb
- Нажмите «ОК», чтобы начать загрузку макроса
- После того, как макрос был загружен, вы можете либо нажать вкладку «Разработчик – Код» – «Остановить запись», либо
- Нажмите значок «Остановить запись» в левой части рабочей строки «Строка состояния» (это самый быстрый способ)
Если вам нужно узнать, где находится папка XLStart, вы можете это сделать (Excel 2013)
- Файл
- Опции
- Если вы хотите, чтобы этот макрос Auto_Open был доступен для автоматического запуска в другой книге, вы должны сохранить эту книгу в папке XLStart, чтобы оба листа были открыты при запуске Excel
- Центр доверия
- Настройка Trust Center
- Надежные сайты – найди их здесь
Существует несколько ограничений с использованием метода Auto_Open
- Если книга, в которой хранится Auto_Open, содержит процедуру VBA в событии Open, эта процедура перезаписывает макрос Auto_Open
- Когда вы запускаете Auto_Open перед тем, как открывать любые книги, если вы записали действия, которые вы хотите выполнить в книге по умолчанию или открываете из папки XLStart, Auto_Open не запускается после перезагрузки Excel, потому что макрос работает до значения по умолчанию и запускает рабочие книги.
- Auto_Open не запускается, если вы программно открываете книгу.
Если вы не хотите, чтобы макрос Auto_Open открывался при открытии файла Excel, удерживайте клавишу SHIFT при запуске Excel.
Все, что вам нужно сделать, это создать процедуру VBA для открытого события –
- Убедитесь, что вкладка разработчика
- Откройте книгу, в которой вы хотите сохранить макрос
- Карта разработчика – группа кода – язык
- Окно Project Explorer
- Щелкните правой кнопкой мыши на этой книге
- Показать код
- Выберите книгу из списка объектов – будет создана пустая процедура, которая будет выглядеть так
Добавьте свой код, чтобы продолжить в этом примере, чтобы добавить сегодняшнюю дату в ячейку A1
Выберите правильное решение для себя, просто ли вы сохраняете макрос как Auto_Open или создаете и открываете процедуру события в VBA
Еще хочу добавить, что если Вам надо не скрыто, а просто быстро удалить все макросы из книги и Вы счастливый обладатель Excel версии 2007 и выше, то Вам всего лишь необходимо книгу, из которой хотите удалить макросы, Сохранить как-обычная Книга Excel(Меню—Сохранить как—Книга Excel).
Где находится ваша личная рабочая книга макросов? CodeRoad
Отличие в типе файлов ясно указывает на то, что рабочая книга содержит макросы, и это уже становится первым важным шагом к соблюдению мер безопасности. Помимо этого, в Excel существует несколько режимов безопасности макросов, выбрать один их которых можно в меню параметров приложения. Вот эти режимы:
Сохранение файла Excel с названием из ячейки — без привязки к ячейке
Теперь давайте представим, что заранее мы не можем определить, какая именно ячейка будет формировать название файла (может B14, а может и нет), поэтому мы можем немного скорректировать алгоритм таким образом, чтобы он брал значение из ячейки, которая является активной, но в этом случае Вы, конечно же, предварительно, должны выбрать ее (т.е. встать на нее).
Замените код процедуры следующим кодом, который совсем немного, но изменен.
Проверяем работу, становимся на нужную ячейку, и запускаем макрос (в процедуре я добавил проверку, если выбрана пустая ячейка, возникнет ошибка).
Удалить макросы из книги excel — IT Новости из мира ПК
Причина, по которой я кликаю по всей строке с левой стороны, заключается в том, что макросы Microsoft Excel очень специфичны. Если я выделю только три столбца в строке, то при запуске макроса, он удалит только те три столбца. Поэтому, вместо этого, я выбираю всю строку целиком. Это помогает вам работать с наборами данных практически любой ширины: