Как посмотреть код VBA в excel
Имеется документ xls с закодированной кнопкой, на код я установил пароль. Так же имеется среда visual studio — basic, используя эти средства нужно увидеть строки кода в кнопке, изменить его или подобрать пароль — не обязательно.
Голосование за лучший ответ
Открыть файл, нажать < Alt >— F11. Найти нужный текст и посмотреть.
Если знающий человек поставил защиту определенным образом, то никак.
Похожие вопросы
Ваш браузер устарел
Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.
Найдены макросы или код VBA
Excel для Microsoft 365 Word для Microsoft 365 PowerPoint для Microsoft 365 Excel 2021 Word 2021 PowerPoint 2021 Excel 2019 Word 2019 PowerPoint 2019 Excel 2016 Word 2016 PowerPoint 2016 Excel 2013 Word 2013 PowerPoint 2013 Excel 2010 Word 2010 PowerPoint 2010 Еще. Меньше
Инспектор документов обнаружил в документе Office (Word, Excel или PowerPoint) один или несколько следующих элементов, которые могут содержать скрытые данные:
- макросы (включая любые макросы WordBasic в документах Word или листы макросов Excel 4.0 (XLM) в книгах Excel);
- модули VBA;
- элементы COM или ActiveX;
- формы пользователей (включая любые формы Excel 5.0 в книгах Excel);
- пользовательские функции в книгах Excel.
Проблема
Инспектор документов не может удалить эти элементы, потому что в результате документ может перестать работать надлежащим образом.
Рекомендуемое решение
- Закройте инспектор документов.
- Вручную удалите все макросы, модули VBA, элементы COM или ActiveX, формы пользователей и пользовательские функции, которые могут содержать скрытые данные. Чтобы найти макросы и модули VBA в документе, сделайте следующее:
- В Word или Excel выберите Вид >Макрос >Макросы. В PowerPoint выберите Вид >Макрос. В окне Макрос выберите макрос, который хотите удалить, и нажмите кнопку Удалить.
- Чтобы найти макросы в редакторе VBA, нажмите клавиши ALT+F11.
- Чтобы убедиться, что проблема устранена, выберите Файл >Сведения >Поиск проблем >Инспектор документов.
Макрос работает, а кода не видать. Как посмотреть код?
Есть excell файл (.xlsm) в котором срабатывает программа: генерация случайных чисел в определенных ячейках при сохранении документа. Возникла необходимость внести изменения в программу. Но не могу никак вывести код. Вкладка Разработчик есть, параметр «Включить все макросы (не рекомендуется, возможен запуск опасной программы)» выбран. Но в окне макросов пусто. И при Alt F11 тоже пустое окно открывается. Подскажите, пожалуйста, как открыть код?
Знания экселя на самом примитивном уровне.
- Вопрос задан более трёх лет назад
- 6835 просмотров
Комментировать
Решения вопроса 0
Ответы на вопрос 2
.NET developer (open to job offers)
Нужно нажать Alt+F11, потом слева дважды кликнуть по названию файла. Может запроситься пароль или сразу открыться дерево структуры файла (книга, листы, модули, формы и тд). Затем нужно двойным кликом последовательно выбирать элементы структуры. При наличии кода у элемента, Вы его увидите. Если кода нет, значит он может быть в другой книге, надстройке или персональной книге с макросами.
Ответ написан более трёх лет назад
Нравится 1 6 комментариев
NataliaCh @NataliaCh Автор вопроса

А где именно слева? Слева ничего нет. Есть название файла на самом верху окна. Клик по нему просто раширяет/сужает само окно. И меню плюс набор иконок.
NataliaCh @NataliaCh Автор вопроса
Если кода нет, значит он может быть в другой книге, надстройке или персональной книге с макросами
Если код где-то в другом месте, то как макрос работает в этой книге? Он же реально отрабатывается.
И как понять где все-таки код?

NataliaCh, включите в View отображение нужных окон.
NataliaCh @NataliaCh Автор вопроса

BasiC2k, добралась вот до такого:
перебрала всё, что в правом селекте. Пусто. Там даже нет выбора опции, похожей на то что надо: типа BeforeSave 🙁
NataliaCh, попробуйте взглянуть
и

NataliaCh @NataliaCh Автор вопроса

Удалось найти код в списке «ЭтаКнига»
Автоматизация задач с помощью средства записи макросов — Excel
Для автоматизации повторяющихся задач в Microsoft Excel можно быстро записать макрос. Предположим, у вас есть даты в различном формате и вы хотите применить ко всем из них один формат. Это можно сделать с помощью макроса. Вы можете записать макрос, который применяет нужный формат, а затем запускать его при необходимости.
При записи макроса все действия в записи макроса записываются Visual Basic для приложений (VBA) коде. Эти действия могут включать ввод текста или чисел, выбор ячеек или команд на ленте или в меню, форматирование ячеек, строк или столбцов или даже импорт данных из внешнего источника, скажем, Microsoft Access. Visual Basic Приложение (VBA) — это подмножество мощного Visual Basic программирования, которое входит в большинство Office приложений. Хотя VBA позволяет автоматизировать процессы как в приложениях, так и между Office, необязательно знать код VBA или программирование на компьютере, если оно делает то, что вам нужно.
Важно знать, что при записи макроса регистрируются почти все ваши действия. Поэтому если вы допустите ошибку, например нажмете не ту кнопку, средство записи макросов зарегистрирует это действие. В таком случае можно снова записать всю последовательность или изменить код VBA. Поэтому перед записью процесса следует хорошо проработать его. Чем точнее вы запишете последовательность, тем более эффективно будет работать макрос.
Макросы и средства VBA находятся на вкладке Разработчик, которая по умолчанию скрыта, поэтому сначала нужно включить ее. Дополнительные сведения см. в статье Отображение вкладки «Разработчик».

Запись макроса
Перед записью макросов полезно знать следующее:
- Макрос, записанный для работы с диапазоном Excel, будет выполняться только для ячеек этого диапазона. Поэтому если вы добавите в диапазон новую строку, макрос не будет применяться к ней.
- Если вам нужно записать длинную последовательность задач, советуем вместо этого использовать несколько более мелких макросов.
- В макросе могут содержаться и задачи, не относящиеся к Excel. Процесс макроса может охватывать прочие приложения Office и другие программы, которые поддерживают Visual Basic для приложений (VBA). Например, вы можете записать макрос, который сначала обновляет таблицу в Excel, а затем открывает Outlook для ее отправки по электронной почте.
Чтобы записать макрос, следуйте инструкциям ниже.

- На вкладке Разработчик в группе Код нажмите кнопку Запись макроса. -ИЛИ- Нажмите ALT+T+M+R.
- В поле Имя макроса введите название макроса. Сделайте имя понятным, чтобы можно было быстро найти нужный макрос.
Примечание: Первым символом имени макроса должна быть буква. Последующие символы могут быть буквами, цифрами или знаками подчеркивания. В имени макроса не должно содержаться пробелов; в качестве разделителей слов следует использовать знаки подчеркивания. Если используется имя макроса, являющееся ссылкой на ячейку, может появиться сообщение об ошибке, указывающее на недопустимое имя макроса..
Работа с макросами, записанными в Excel
На вкладке Разработчик щелкните Макросы, чтобы просмотреть макросы, связанные с книгой. Кроме того, можно нажать клавиши ALT+F8. При этом откроется диалоговое окно Макрос.

Внимание: Макросы нельзя отменить. Прежде чем впервые запускать записанный макрос, сохраните книгу или создайте ее копию, чтобы предотвратить внесение нежелательных изменений. Если вас не устраивают результаты выполнения макроса, вы можете закрыть книгу, не сохраняя ее.
Ниже приведены дополнительные сведения о работе с макросами в Excel.
Сведения о параметрах безопасности макросов и их значении.
Макросы можно запускать различными способами, например с помощью сочетания клавиш, графического объекта, панели быстрого доступа, кнопки или даже при открытии книги.
С помощью редактора Visual Basic можно изменять макросы, присоединенные к книге.
Если книга содержит макрос VBA, который нужно использовать где-либо еще, этот модуль можно скопировать в другую книгу с помощью редактора Microsoft Visual Basic.
Назначение макроса объекту, фигуре или графическому элементу
- Щелкните правой кнопкой мыши объект, рисунок, фигуру или элемент, которому вы хотите назначить существующий макрос, и выберите пункт Назначить макрос.
- В поле Назначить макроса выберите макрос, который вы хотите назначить.
Вы можете назначить макрос значку и добавить его на панель быстрого доступа или ленту.
Вы можете назначать макросы формам и элементам ActiveX на листе.
Узнайте, как включать и отключать макросы в файлах Office.
Открытие редактора Visual Basic
Нажмите клавиши ALT+F11.
Узнайте, как найти справку по элементам Visual Basic.
Работа с записанным кодом в редакторе Visual Basic (VBE)
С помощью редактора Visual Basic (VBE) вы можете добавлять в записанный код собственные переменные, управляющие структуры и другие элементы, которые не поддерживает средство записи макросов. Так как средство записи макросов фиксирует почти каждый шаг, выполняемый во время записи, может также потребоваться удалить ненужный код. Просмотр записанного кода — отличный способ научиться программировать на VBA или отточить свои навыки.
Пример изменения записанного кода можно найти в статье Начало работы с VBA в Excel.
Запись макроса
Перед записью макросов полезно знать следующее:
- Макрос, записанный для работы с диапазоном Excel, будет выполняться только для ячеек этого диапазона. Поэтому если вы добавите в диапазон новую строку, макрос не будет применяться к ней.
- Если вам нужно записать длинную последовательность задач, советуем вместо этого использовать несколько более мелких макросов.
- В макросе могут содержаться и задачи, не относящиеся к Excel. Процесс макроса может охватывать прочие приложения Office и другие программы, которые поддерживают Visual Basic для приложений (VBA). Например, вы можете записать макрос, который сначала обновляет таблицу в Excel, а затем открывает Outlook для ее отправки по электронной почте.
Макросы и средства VBA находятся на вкладке Разработчик, которая по умолчанию скрыта, поэтому сначала нужно включить ее.
- Перейдите в Excel >параметры. >ленты & панель инструментов.
- В категории Настроить ленту в списке Основные вкладки установите флажок Разработчик, а затем нажмите кнопку Сохранить.
Чтобы записать макрос, следуйте инструкциям ниже.
- На вкладке Разработчик нажмите кнопку Запись макроса.
- В поле Имя макроса введите название макроса. Сделайте имя понятным, чтобы можно было быстро найти нужный макрос.
Примечание: Первым символом имени макроса должна быть буква. Последующие символы могут быть буквами, цифрами или знаками подчеркивания. В имени макроса не должно содержаться пробелов; в качестве разделителей слов следует использовать знаки подчеркивания. Если используется имя макроса, являющееся ссылкой на ячейку, может появиться сообщение об ошибке, указывающее на недопустимое имя макроса..
Работа с макросами, записанными в Excel
На вкладке Разработчик щелкните Макросы, чтобы просмотреть макросы, связанные с книгой. При этом откроется диалоговое окно Макрос.
Примечание: Макросы нельзя отменить. Прежде чем впервые запускать записанный макрос, сохраните книгу или создайте ее копию, чтобы предотвратить внесение нежелательных изменений. Если вас не устраивают результаты выполнения макроса, вы можете закрыть книгу, не сохраняя ее.
Ниже приведены дополнительные сведения о работе с макросами в Excel.
Узнайте, как включать и отключать макросы в Excel для Mac.
Если книга содержит макрос VBA, который нужно использовать где-либо еще, этот модуль можно скопировать в другую книгу с помощью редактора Microsoft Visual Basic.
Назначение макроса объекту, фигуре или графическому элементу
- Щелкните правой кнопкой мыши объект, рисунок, фигуру или элемент, которому вы хотите назначить существующий макрос, и выберите пункт Назначить макрос.
- В поле Назначить макроса выберите макрос, который вы хотите назначить.
Вы можете назначить макрос значку и добавить его на панель быстрого доступа или ленту.
Вы можете назначать макросы формам и элементам ActiveX на листе.
Открытие редактора Visual Basic
На вкладке Разработчик щелкните Visual Basic или выберите Сервис > Макрос > Редактор Visual Basic.
Узнайте, как найти справку по элементам Visual Basic.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
