Создание списка макросов (Microsoft Excel)
Как только вы начнете писать макросы Excel, их будет легко найти в книге. В какой-то момент вы можете захотеть создать список макросов в своей книге. В Excel нет встроенного способа создания списка макросов. Однако вы можете создать макрос, в котором будут перечислены ваши макросы. (Звучит как бы излишне, не так ли?)
В качестве примера рассмотрим следующий макрос, который проходит через все проекты в вашей книге, чтобы собрать все имена макросов и поместить их на лист:
Sub ListMacros() Dim VBComp As VBComponent Dim VBCodeMod As CodeModule Dim oListsheet As Object Dim StartLine As Long Dim ProcName As String Dim iCount As Integer Application.ScreenUpdating = False On Error Resume Next Set oListsheet = ActiveWorkbook.Worksheets.Add iCount = 1 oListsheet.[a1] = "Macro" For Each VBComp In ThisWorkbook.VBProject.VBComponents Set VBCodeMod = ThisWorkbook.VBProject.VBComponents(VBComp.Name).CodeModule With VBCodeMod StartLine = .CountOfDeclarationLines + 1 Do Until StartLine >= .CountOfLines oListsheet.[a1].Offset(iCount, 0).Value = _ .ProcOfLine(StartLine, vbext_pk_Proc) iCount = iCount + 1 StartLine = StartLine + _ .ProcCountLines(.ProcOfLine(StartLine, _ vbext_pk_Proc), vbext_pk_Proc) Loop End With Set VBCodeMod = Nothing Next VBComp Application.ScreenUpdating = True End Sub
Чтобы использовать этот макрос, вы должны убедиться, что у вас есть набор ссылок на расширяемость Microsoft VBA. Для этого выполните следующие действия:
-
В редакторе VBA выберите «Ссылки» в меню «Инструменты». Откроется диалоговое окно «Ссылки». (См. Рис. 1.)
-
Прокрутите список доступных ссылок и убедитесь, что установлен флажок Microsoft Visual Basic для расширения приложений.
-
Закройте диалоговое окно.
Когда вы запускаете макрос, он добавляет новый лист в вашу книгу, а затем перечисляет имена всех макросов во всех модулях в книге.
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (2715) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:
link: / excelribbon-Generating_a_List_of_Macros [Создание списка макросов]
.