Как посмотреть код макроса excel

Есть excell файл (.xlsm) в котором срабатывает программа: генерация случайных чисел в определенных ячейках при сохранении документа. Возникла необходимость внести изменения в программу. Но не могу никак вывести код. Вкладка Разработчик есть, параметр «Включить все макросы (не рекомендуется, возможен запуск опасной программы)» выбран. Но в окне макросов пусто. И при Alt F11 тоже пустое окно открывается. Подскажите, пожалуйста, как открыть код?
Знания экселя на самом примитивном уровне.


  • Вопрос задан

    более трёх лет назад

  • 5509 просмотров


Download Article

An easy-to-use guide to find and manage macros in your Excel workbook


Download Article

This wikiHow teaches you how to see a list of macros in your Excel workbook, as well as how to view each macro’s details in the Visual Basic Editor. Before you can work with macros, you’ll need to enable the Developer tab in Excel—fortunately, this is super easy to do.

Steps

  1. Image titled View Macros in Excel Step 1

    1

    Open a workbook in Excel. You can double-click the name of the workbook to open it in Excel. Alternatively, open Excel first from the Windows Start menu or your Mac’s Applications folder, click Open, and then double-click the file.

  2. Image titled View Macros in Excel Step 2

    2

    Enable the Developer tab. If the Developer tab is enabled, it’ll be in the menu bar at the top of Excel. If you don’t see it, here’s how to enable it:

    • Windows:

      • Click the File menu and select Options.
      • Click Customize Ribbon.
      • Select Main Tabs from the «Customize the ribbon» drop-down menu.[1]
      • Check the box next to Developer and click OK.
    • macOS:

      • Click the Excel menu and select Preferences.[2]
      • Select Main Tabs under «Customize the Ribbon.»
      • Check the box next to Developer.
      • Click Save.

    Advertisement

  3. Image titled View Macros in Excel Step 3

    3

    Click the Developer tab. It’s at the top of Excel.

  4. Image titled View Macros in Excel Step 4

    4

    Click Macros. It’s on the left side of the toolbar. This displays a list of macros in all open workbooks by default.

    • To see macros in a particular workbook only, select that workbook’s name from the «Macros in» menu.
  5. Image titled View Macros in Excel Step 5

    5

    Select a macro and click Edit. This displays the macro in the Visual Basic Editor.

  6. Advertisement

Ask a Question

200 characters left

Include your email address to get a message when this question is answered.

Submit

Advertisement

Thanks for submitting a tip for review!

References

About This Article

Article SummaryX

1. Open a workbook.
2. Click the Developer tab.
3. Click Macros.
4. Select a Macro.
5. Click Edit.

Did this summary help you?

Thanks to all authors for creating a page that has been read 41,480 times.

Is this article up to date?

Если Вы задались вопросом «Как запустить макрорекордер и записать макрос в Excel?» то эта статья для Вас. Рассмотрим процесс запуска макрорекордера и записи макроса в разных версиях Excel. Для большей определенности запишем макрос, выделяющий столбец «А» электронной таблицы. 

Microsoft Excel 2003

Запускаем приложение, заходим в главное меню Сервис/Макрос и выбираем пункт «Начать запись…»

Macrorecorder_Excel_2003-1

После выбора пункта меню «Начать запись» появляется окно, в котором присваиваем нашему макросу имя «Макрос1», сочетание горячих клавиш присваивать не будем, для сохранения выберем личную книгу макросов, описание оставим то, которое есть по умолчанию. Жмем ОК.

Macrorecorder_Excel_2003-2

С этого момента все наши действия записываются макрорекордером, автоматически переводятся на язык программирования Visual Basic for Application и записываются в модуль личной книги макросов.

В самом начале статьи мы условились, что нашим действием будет выделение столбца «А», поэтому выделяем столбец и останавливаем запись выбором меню «Остановить запись», которая находится также в меню Сервис/Макрос.

Macrorecorder_Excel_2003-3

Вот собственно и все, макрос записан.

Посмотрим теперь, как работает записанный нами макрос. Для этого снимем выделение со столбца, зайдем в меню Сервис/Макрос/Макросы либо нажмем сочетание клавиш Alt+F8, выберем из списка макрос с нашим названием «Макрос1» и нажмем кнопку «Выполнить». Обратите внимание, что с помощью этого окна можно не только запустить макрос, можно также внести изменения в его программный код, а также удалить макрос.

Macrorecorder_Excel_2003-4

Результатом выполнения макроса станет выделенный столбец «А», строго в соответствии с тем действием, которое мы записали. Если записанный Вами макрос не запустился, то Вам следует изменить параметры системы безопасности.

Для просмотра программного кода записанного макроса, запускаем редактор Visual Basic через меню Сервис/Макрос/Редактор Visual Basic, либо нажатием сочетания клавиш Alt+F11. В открывшемся окне редактора видим новый модуль Module1 в проекте VBAProject(PERSONAL.XLS), в котором сохранен программный код записанного нами макроса.

Macrorecorder_Excel_2003-5

 

Microsoft Excel 2007

Запускаем приложение. Кнопка «Начать запись…» в Excel 2007 расположена сразу в нескольких местах, самое доступное из которых в левом нижнем углу окна приложения, в строке состояния.

Macrorecorder_Excel_2007-1

Еще одно расположение откуда доступен запуск макрорекордера на вкладке «Вид», в группе «Макросы». Прежде чем продолжить, остановимся на том, что такое лента и что такое вкладка на этой ленте. Лента — это широкая полоса в верхней части окна программы, на которой размещены тематические наборы команд, собранные во вкладках и в группах. Вкладка в свою очередь, представляет собой часть ленты с командами, сгруппированными по задачам, которые обычно выполняются совместно. Группа — это еще более локализованный набор команд, сформированный по принципу наибольшей близости по типу выполняемой задачи. Непосредственно в группах уже находятся кнопки для выполнения команд. 

Macrorecorder_Excel_2007-2

И еще одно место где можно включить запись макроса макрорекордером — это вкладка «Разработчик», в том случае, если она предварительно была отображена на ленте. По умолчанию эта вкладка в Excel 2007 не отображается.

Macrorecorder_Excel_2007-3

На вкладке «Разработчик» расположены все доступные инструменты для работы с макросами. О том как ее отобразить описано в статье «Работа с макросами VBA. Инструменты для работы с макросами«.

После нажатия, кнопка «Запись макроса» меняет свое название на «Остановить запись». Выполнение и просмотр кода макроса осуществляется точно также, как в Excel 2003. 

Microsoft Excel 2010

В Excel 2010 расположение кнопок записи и остановки записи макроса абсолютно аналогичное версии Excel 2007. Это левый нижний угол окна приложения в строке состояния, вкладка «Вид» и вкладка «Разработчик». В этой версии Excel, редактор Visual Basic устанавливается как отдельный компонент пакета с наименованием «Общие средства Office» и называется «Visual Basic для приложений», поэтому если у Вас возникли проблемы с доступностью макрорекрордера или редактора Visual Basic, то Вам необходимо вернуться на этап установки пакета Microsoft Office и доустановить недостающий компонент. Кроме того, может возникнуть проблема при запуске самого макроса, связанная с настройками системы безопасности.

Другие материалы по теме:

 

Андрей

Пользователь

Сообщений: 27
Регистрация: 17.09.2020

Здраствуйте! Подскажите пожалуйста) есть excel файл в нем есть макрос который работает, как его отредактировать? В окне макросов пусто. Подскажите, пожалуйста, как посмотреть код? Буду признателен если просто напишите код. Заранее спасибо)

Изменено: Юрий М04.10.2022 12:54:56

 

трудно увидеть код, если его там нет
обратите внимание на условное форматирование

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

New

Пользователь

Сообщений: 4582
Регистрация: 06.01.2013

а особенно обратите внимание на количество этого Условного форматирования на этом листе, а то скоро вы придёте к нам снова и будете спрашивать, почему данный файл у вас сильно тупит (тормозит) и почему все остальные файлы Excel, которые открыты вместе с этим файлом так же тупят (тормозят)

 

Андрей

Пользователь

Сообщений: 27
Регистрация: 17.09.2020

#4

04.10.2022 09:03:48

Цитата
написал:
трудно увидеть код, если его там нет
обратите внимание на условное форматирование

Спасибо. посмотрев более внимательно файл который приложил, увидел, что «стрелки» направлены без какого-то правила. (раньше всё работало, видимо я что то намудрил с сохранениями)
Раньше мне здесь

https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=144381&a…

скидывали макрос который делал условное форматирование роста и падения относительно предыдущей ячейки, но автор почему-то удалил этот макрос.
Просто без макроса это сделать невозможно(

 

я их не считал, но в файле тысячи правил
обычно все происходит так: одна задача — одно правило (на весь диапазон, а не в каждой ячейке свое)
какой там макрос был — никто не знает, писать макрос который снова навесит тысячи правил — на любителя (я не стану)
для начала:
1. обьясните задачу, которую пытаетесь решить
2. при обьяснении определяйте термины, которыми пользуетесь, понимаете, что такое «предыдущая ячейка» очевидно только для вас, для остальных — загадка «предыдущая — это которая?» и пока нет простых и ОДНОЗНАЧНЫХ обьяснений условий задачи — никто ее не решит (несколько исключений: 1) любители погадать начнут наваливать сюда решения и рано или поздно кто-то его угадает, 2) любители ребусов — разгадают ваши слова, поймут о чем речь и решат задачу))

Изменено: Ігор Гончаренко04.10.2022 09:27:22

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Андрей

Пользователь

Сообщений: 27
Регистрация: 17.09.2020

#6

04.10.2022 10:32:14

Цитата
написал:
я их не считал, но в файле тысячи правил
обычно все происходит так: одна задача — одно правило (на весь диапазон, а не в каждой ячейке свое)
какой там макрос был — никто не знает, писать макрос который снова навесит тысячи правил — на любителя (я не стану)
для начала:
1. обьясните задачу, которую пытаетесь решить
2. при обьяснении определяйте термины, которыми пользуетесь, понимаете, что такое «предыдущая ячейка» очевидно только для вас, для остальных — загадка «предыдущая — это которая?» и пока нет простых и ОДНОЗНАЧНЫХ обьяснений условий задачи — никто ее не решит (несколько исключений: 1) любители погадать начнут наваливать сюда решения и рано или поздно кто-то его угадает, 2) любители ребусов — разгадают ваши слова, поймут о чем речь и решат задачу))

)))) Попробую объяснить:
1. В ячейках содержатся цифры (к примеру) А1

8  

B1

12  

C1

7  

D1

7

E1

8  

F1

11

G1

10

 и т.д. Нужно что бы получился результат:
[А1 8] [B1 ↑12] [C1 ↓7]   [D1 → 7] [E1 ↑8] [F1 ↑11]  [G1 ↓10] Нужно, что бы стрелки  ↑→ ↓ показывали рост и падение относительно предыдущей ячейки  в ячейки А1 число 8 в ячейке  B1 12.  А1<B1 значит в ячейке B1 должна быть ↑  

Изменено: Андрей04.10.2022 10:40:57

 

стрелки не поддаются и не факт что с макросом получится одно правило
а просто обозначить цветом — достаточно написать 2 правила на диапазон и видно не хуже, чем стрелки))

Изменено: Ігор Гончаренко04.10.2022 12:31:34

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Андрей

Пользователь

Сообщений: 27
Регистрация: 17.09.2020

#8

04.10.2022 12:44:08

Цитата
написал:
стрелки не поддаются и не факт что с макросом получится одно правило
а просто обозначить цветом — достаточно написать 2 правила на диапазон

Вы Бог excel))))), огромнейшее Вам спасибо. Тот макрос работал 100%, но когда было много строк и столбцов он делал эту процедуру несколько минут, каждый день приходилось обновлять в коде диапазон  данных, в Вашем же варианте всё делается за доли секунды. А главное файл не тупит))))
Ещё раз огромнейшее Спасибо Вам!

 

Юрий М

Модератор

Сообщений: 60585
Регистрация: 14.09.2012

Контакты см. в профиле

Андрей,  прекратите бездумное цитирование. У Вас не цитаты, а полные копии предыдущих сообщений. И запомните: кнопка цитирования не для ответа!

 

Андрей

Пользователь

Сообщений: 27
Регистрация: 17.09.2020

 

Ігор Гончаренко

Пользователь

Сообщений: 13746
Регистрация: 01.01.1970

#11

04.10.2022 12:53:23

название темы:

обозначить зеленым цветом если значение в ячейке больше значения левее и красным, если меньше

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

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

Однако вы все равно можете просмотреть код макроса в редакторе Excel VBA и сопоставить его с шагами, которые вы записали в макросе. Вы узнаете, как просматривать код и понимать его для первого макроса, который вы создали в этом руководстве – MyFirstMacro.

Просмотр макрокода в VBA Editor

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

  • Откройте книгу, в которой вы сохранили макрос.
  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы.
  • Выберите View Macros из выпадающего списка.

Просмотр

Откроется диалоговое окно «Макрос».

  • Нажмите MyFirstMacro в списке макросов.
  • Нажмите кнопку Изменить.

редактировать

Откроется редактор VBA и появится код макроса MyFirstMacro.

макрос

Понимание записанных действий как частей кода

Вы можете просмотреть код макроса и сопоставить их с вашими записанными шагами.

  • Начните читать код.
  • Сопоставьте код с записанными шагами.

понимание

Прокрутите код, чтобы увидеть больше кода. Кроме того, вы можете увеличить окно кода.

Увеличить код

Обратите внимание, что код прост. Если вы изучите Excel VBA, вы можете создать макросы, написав код в редакторе VBA.

Вы узнаете, как написать код VBA для создания макроса, в главе «Создание макроса с помощью редактора VBA».

Понравилась статья? Поделить с друзьями:
  • Как посмотреть код excel файла
  • Как посмотреть когда создан файл word
  • Как посмотреть все скрытые строки в excel
  • Как посмотреть диапазон сводной таблицы в excel
  • Как посмотреть все символы в excel