11

У меня есть книга, которая использует определенную функцию VBA, которая не отображается в Вставка | Вставить функцию ... диалоговое окно со списком доступных функций.

Как мне найти его источник (чтобы узнать, что он делает)?

4 ответа4

17

Надеюсь, я понимаю ваш вопрос ... Из прочтения других ответов я вижу, что это не записанный макрос. Можно с уверенностью предположить, что кто-то написал это в VBA. Попробуйте следующее:

  1. Нажмите ALT+F11, чтобы открыть редактор VBA.
  2. Нажмите «Вид»> «Обозреватель проектов» (он может быть уже виден).
  3. Вы должны увидеть «VBAProject (ваша книга name.xls). Нажмите это.
  4. Щелкните один из листов в разделе «Объекты Microsoft Excel» в проводнике проекта.
  5. Нажмите Вид> Код
  6. Нажмите Редактировать> Найти
  7. Введите название функции в поле
  8. Убедитесь, что выбран «Текущий проект».
  9. Нажмите Найти далее

Это должно привести вас туда, где написана функция.

3

Нажмите ALT + F11, чтобы увидеть окно проекта VBA. Там вы сможете найти код для пользовательской функции.

1

Microsoft написала документацию для VBA. Он отсортирован по объектам, а не по функциям, но если вам не нужно вводить имя объекта перед функцией, скорее всего, это будет функция объекта, с которым вы в данный момент работаете, например текущей книги. Эту документацию можно прочитать здесь. http://msdn.microsoft.com/en-us/library/bb149081.aspx Попробуйте найти функцию в таких объектах, как Рабочая тетрадь, Лист и т. д., и, если ее там нет, воспользуйтесь опцией поиска на сайте ( предупреждение: этот поиск был плохим, теперь он кажется поисковым, так что, может быть, сейчас и лучше). Вы не сможете увидеть исходный код функции, но там есть всеобъемлющий API.

Если вы не можете найти функцию там и думаете, что она не является стандартной функцией Excel, возникает вопрос, откуда Excel взял ее для выполнения. Попробуйте отладить макрос, вызывающий данную функцию, и используйте кнопку "step on button". Если вы видите источник, вы решили свою проблему. Если его там нет, он может исходить от внешнего приложения, обменивающегося данными с Excel. Зайдите в кнопку "Офис", там выберите параметры Excel, там зайдите в надстройки. Вы можете посмотреть на установленные надстройки и найти их документацию.

Если все остальное терпит неудачу и / или является слишком громоздким, вы всегда можете найти в Google что-то вроде «[имя функции] + Excel + VBA + Документация]». Может быть, вы найдете онлайн-документацию.

0

Функция, на которую вы ссылаетесь, вероятно, является "макросом", записанным в Excel.

Если вы используете Office 2007, щелкните вкладку «Вид», а затем щелкните стрелку раскрывающегося списка под кнопкой «Макросы». Выберите «Просмотреть макросы» из списка, чтобы просмотреть макросы, записанные для этой таблицы.

Если вы видите в списке название интересующей вас функции, выберите ее и нажмите кнопку «Изменить», чтобы просмотреть ее.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .