AllMacros 集合包含 CurrentProject 或 CodeProject 对象中每个宏的 AccessObject 对象。
CurrentProject 或 CodeProject 对象具有一个 AllMacros 集合,其中包含描述数据库中所有宏的实例的 AccessObject 对象。例如,可以在 Visual Basic 中列举 AllMacros 集合来设置或返回该集合中单个 AccessObject 对象的属性值。
可以引用 AllMacros 集合中的单个 AccessObject 对象,方法是:按照名称引用对象,或引用集合中对象的索引。如果要引用 AllMacros 集合中特定的对象,最好按照名称引用宏,因为宏的集合索引可能会更改。
AllMacros 集合的索引是从零开始的。如果通过索引来引用宏,则第一个宏是 AllMacros(0),第二个宏是 AllMacros(1),依此类推。
注释 若要列出数据库中所有打开的宏,可使用 AllMacros 集合中每个 AccessObject 对象的 IsLoaded 属性。然后,可使用每个单独的 AccessObject 对象的 Name 属性返回宏的名称。
无法在 AllMacros 集合中添加或删除 AccessObject 对象。
下面的示例将打印 AllMacros 集合中每个打开的 AccessObject 对象的名称。
Sub AllMacros()
Dim obj As AccessObject, dbs As Object
Set dbs = Application.CurrentProject
' Search for open AccessObject objects in AllMacros collection.
For Each obj In dbs.AllMacros
If obj.IsLoaded = True Then
' Print name of obj.
Debug.Print obj.Name
End If
Next obj
End Sub