Point :マクロ名を取得したい。
'ThisWorkbookのModule1のマクロ名をセルに列挙します。
Sub Test()
Dim myProCount, myProcName
Dim buf()
Dim i
myProCount = 0
With ThisWorkbook.VBProject.VBComponents.Item("Module1").CodeModule
myProcName = ""
For i = 1 To .CountOfLines
'対象モジュールの行数
If myProcName <> .ProcOfLine(i, 0) Then
'プロシージャ名を比較
myProcName = .ProcOfLine(i, 0)
ReDim Preserve buf(myProCount)
buf(myProCount) = myProcName
'配列に格納
myProCount = myProCount + 1
'次の行へ
End If
Next i
End With
For i = 0 To UBound(buf)
Cells(i + 1, 1) = buf(i)
Next i
'セルに書き出します。
End Sub
|