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


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,380 times.

Is this article up to date?

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


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

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

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

 

john22255

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

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

#1

02.08.2017 13:09:56

Доброго дня!
Вот есть на форуме старая тема:

http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=8&TID=2578

И в этой теме приложен файл уважаемым

Юрий М

.
Вот ссылка на этот файл:

http://www.planetaexcel.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=9188&action=download

Подскажите пожалуйста, как посмотреть код этих штуковин.
Потому что я включаю «режим конструктора», выделяю кнопку на экране, жму «просмотр кода» и вижу только:

Код
Sub Form()
   UserForm1.Show
End Sub

Как то не густо…. Я наверно что то не так делаю. Подскажите как увидеть весь код целиком.
Спасибо.

 

Logistic

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

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

Смотрите свойство комбобокса

 

kuklp

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

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

E-mail и реквизиты в профиле.

Для кнопки это и есть весь код. Код самой формы находится в модуле формы, там его и смотрите.

Что такое модуль? Какие бывают модули?

Я сам — дурнее всякого примера! …

 

john22255

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

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

#4

02.08.2017 13:21:24

Цитата
Logistic написал:
Смотрите свойство комбобокса

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

Вот все что можно увидеть через редактор vba:

Код
Private Sub ComboBox1_Change()

End Sub

Private Sub CommandButton1_Click()
   Range("D1") = ComboBox1.Value
   Unload UserForm1
End Sub

Private Sub UserForm_Click()

End Sub

Изменено: john2225502.08.2017 13:23:41

 

Logistic

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

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

 

john22255

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

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

#6

02.08.2017 13:42:52

Цитата
Logistic написал:
Протестируйте так

У вас так же малоинформативный код:

Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub
 

Logistic

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

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

А какую Вам надо информацию? :(  

 

Sanja

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

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

#8

02.08.2017 13:45:26

Смотрите

Код
Private Sub CommandButton1_Click()
   Range("D1") = ComboBox1.Value
   Unload UserForm1
End Sub

Согласие есть продукт при полном непротивлении сторон.

 

john22255

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

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

#9

02.08.2017 13:48:50

Цитата
Logistic написал:
А какую Вам надо информацию?

Я бы хотел приспособить этот способ (диалоговое окно с выпадающим списком) для собственных нужд. И хотел бы понять как мне это сделать. Но понять не могу. Например непонятно где поменять диапазон списка. Ведь в искомом файле он B2:B11, а мне нужен другой диапазон.

Изменено: john2225502.08.2017 13:51:19

 

Kuzmich

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

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

#10

02.08.2017 13:50:35

Цитата
все что можно увидеть через редактор vba

Alt + F11
Forms —> UserForm1 кликните мышкой и выбирайте нужные вам элементы

 

The_Prist

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

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

Профессиональная разработка приложений для MS Office

#11

02.08.2017 13:54:31

Цитата
john22255 написал:
Нельзя ничего нажать или включить контекстное меню

а Вы отожмите кнопку режима конструктора, ознакомьтесь с азами работы в VBA(где модули, как попасть) и все у Вас получится. Вам надо всего-то нажать Alt+F11, Ctrl+R(для отображения окна проектов) — найти там свой файл, раскрыть и поискать там везде эту самую UserForm. Вот в ней весь код и найдете.

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

 

john22255

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

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

Спасибо,всем откликнувшимся! Я кажется нашел в частности где поменять диапазон списка:

 

Logistic

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

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

Я ведь Вам писал ,смотрите свойства комбобокса :)  

 

john22255

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

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

#14

02.08.2017 14:13:18

Цитата
Logistic написал:
Я ведь Вам писал

Извините, но до меня сразу не дошло, что вы имеете ввиду

 

kuklp

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

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

E-mail и реквизиты в профиле.

#15

02.08.2017 14:19:40

Цитата
john22255 написал:
где поменять диапазон списка

Вот это и надо было спросить в топике, а не ходить вокруг, да около. Конспиратор.. 15 пост в теме!

Цитата
The_Prist написал:
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы…

Я сам — дурнее всякого примера! …

В данной статье вы подробнее узнаете о том, как эффективно работать в редакторе Visual Basic при помощи специальных окон.

Содержание

  1. Откройте редактор Visual Basic
  2. Редактор Visual Basic
  3. Окно проекта
  4. Окно кода
  5. Окно свойств
  6. Окно отладки
  7. Окно переменных
  8. Окно отслеживания

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

Самый простой способ получить доступ к Visual Basic – зажать сочетание Alt и F11. Готово! Перед вами появился данный инструмент, как это показано на скриншоте ниже. Обратите внимание, что при открытии редактора обычная электронная таблица не закрывается.Редактор Visual Basic

Редактор Visual Basic

При работе в Visual Basic у вас есть возможность взаимодействовать с несколькими окнами. Их использование значительно упрощает написание кода и его проверку. Чтобы их открыть, необходимо перейти к вкладке «Вид», которая расположена вверху. Теперь нам необходимо рассмотреть все доступные возможности.

Окно проекта

Окно «Проект» можно найти в редакторе VBA слева (это видно на представленном выше скриншоте). В нём отображаются все модули VBA, которые есть в данном документе Excel.Редактор Visual Basic

Изначально «Проект» VBA состоит из:

  • Объекта «ЭтаКнига», связанного с книгой.
  • Объектов «Лист», которые связаны со всеми листами документа.

Вы также можете самостоятельно добавить дополнительные объекты «Форма пользователя», «Модуль» и «Модуль класса» в ваш проект. На представленном ранее скриншоте был выбран «Модуль», и добавлен он под названием Module1.

Для создания нового объекта сделайте следующее:

  • В «Проекте» нажмите мышью по книге, к которой необходимо добавить объект.
  • В появившемся окне выберите «Вставить», а затем укажите необходимый класс объекта. 

Следует отметить, что у каждого представленного объекта есть окно: в нём содержится код VBA. 

При написании кода необходимо следовать нескольким правилам:

  • Код, который будет связан с книгой, должен быть вписан в объект «ЭтаКнига».
  • Код, который необходимо связать с конкретным рабочим листом, нужно ввести в объект «Лист».
  • Общий код (который не связан ни с чем) нужно вводить в «Модуль».
  • Если вы создаете свои собственные объекты, их код стоит вписывать в «Модуль класса».
  • При добавлении кода для дальнейшего использования человеком стоит работать с «Формой пользователя».

Окно кода

Щёлкнув дважды по определённому объекту во вкладке «Проект», вы откроете окно «Код». В появившемся поле можно ввести необходимую комбинацию. На представленном выше скриншоте есть окно «Код» для объекта под названием Module1.

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

Окно свойств

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

Окно отладки

Данное окно поможет вам при написании кода. Оно позволяет делать отладку выражений, а также выполнять отдельные строки кода. Чтобы его открыть, во вкладке «Вид» необходимо найти пункт «Отладка». Кроме того, это можно сделать, нажав комбинацию Ctrl и G.Редактор Visual Basic

Окно переменных

Для перехода к окну «Переменные» в меню «Вид» укажите параметр «Окно переменных». Здесь вы увидите все переменные в данном процессе. Все показатели отображаются в виде столбцов, в которых написаны названия, значения и виды каждого аргумента. При запуске программы все данные обновляются. Это позволит вам полностью контролировать работу и выявлять любые несоответствия в коде.Редактор Visual Basic

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

Данное окно вам также может понадобиться при отладке кода. В нём отображается значение, тип и контекст всех числовых показателей, которые были ранее выбраны пользователем.

Его можно открыть так: во вкладке «Вид» выберите «Окно отслеживания». Кроме того, оно автоматически появится, если вы зададите необходимое выражение.Редактор Visual Basic

Чтобы задать данное выражение, выполните следующие простые шаги:

  • Выделите данный элемент в коде VBA.
  • В меню «Отладка» выберите опцию «Быстрое отслеживание».
  • Нажмите на кнопку «Добавить».

На этом всё. Следует отметить, что существует ещё великое множество опций и команд для написания, выполнения и отладки кода VBA. О них мы непременно расскажем в других уроках!

Оцените качество статьи. Нам важно ваше мнение:

693 / 99 / 10

Регистрация: 25.06.2011

Сообщений: 718

1

Как увидеть код стандартних фунций

09.02.2012, 16:21. Показов 5871. Ответов 6


Студворк — интернет-сервис помощи студентам

как увидеть код стандартних фунций…..там походу пароль? есть необходимость увидеть решение майрософта на нескольких функциях…….. ну и чуство недоступности или прихованости чего не могу увидеть уже достало ………офис у меня 2003



1



Эксперт WindowsАвтор FAQ

17993 / 7619 / 890

Регистрация: 25.12.2011

Сообщений: 11,352

Записей в блоге: 17

09.02.2012, 17:53

2

Не уверен, что ТС имел в виду это:

Где можно найти описание, значения параметров всех стандратных функций, процедур (написанных в виде кода VBA). Может что-то вроде справочника. Понятно что все это по отдельности можно найти в поисковике, но все же. Некоторые внутренние функции VBA — дает подсказку и они есть в его help-е (Shift+F2), но описания на эти команды отсутствуют:

… = Find (… — поиск на листе, здесь много параметров

и т.п.



2



693 / 99 / 10

Регистрация: 25.06.2011

Сообщений: 718

09.02.2012, 18:02

 [ТС]

3

проблема вот чем ……….. что нужно увидеть код екселивських функций



0



Эксперт WindowsАвтор FAQ

17993 / 7619 / 890

Регистрация: 25.12.2011

Сообщений: 11,352

Записей в блоге: 17

09.02.2012, 18:03

4

Погарячился
оказывается во встроенном хелпе есть. Выделяем любую простенькую команду, Shift+F2, вводим в поле поиска команду «find», выделяем нужное свойство, например «Excel WorkSheetFunction Find» и нажимаем значек вопроса.

Я понял, т.е. например, Вам нужно узнать как устроена команда Replace в более простом виде … и прочие ?



0



693 / 99 / 10

Регистрация: 25.06.2011

Сообщений: 718

09.02.2012, 18:05

 [ТС]

5

может ето поможет



0



1702 / 189 / 19

Регистрация: 20.11.2011

Сообщений: 281

11.02.2012, 06:50

6

Лучший ответ Сообщение было отмечено как решение

Решение

Цитата
Сообщение от IvanOK
Посмотреть сообщение

проблема вот чем ……….. что нужно увидеть код екселивських функций

Да проще простого. Дизассемблируйте ВСЕ(!) екселевкие(а лучше все офисные) библиотеки и ищите нужную функцию. Не беда, что там наверняка применено еще и шифрование кода — по сути это все тот же ассемблер, так что трудностей возникнуть не должно:-)



6



Эксперт WindowsАвтор FAQ

17993 / 7619 / 890

Регистрация: 25.12.2011

Сообщений: 11,352

Записей в блоге: 17

11.02.2012, 20:09

7

То, что Вы показывали на скриншоте, является надстройками XLA, защищенными от просмотра исходного кода правообладателем.
Раскрытие кода с Вашей стороны будет называться пиратством.



0



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