我已经在 Excel VBA 中编写了以下代码,如果位于 Outlook 的默认收件箱文件夹中,它会打开一封带有给定主题的电子邮件。
但是,我想在所有收件箱子文件夹中搜索此电子邮件。
因为代码将被多个用户使用,我不知道他们的 Outlook 收件箱子文件夹的数量和名称。关于如何在所有子文件夹中搜索此电子邮件的任何想法?
Sub GetEmail()
Dim OutApp as Object
Dim Namespace as Object
Dim Folder as Object
Dim myMail as Object
Set OutApp = CreateObject("Outlook.Application")
Set Namespace = OutApp.GetNamespace ("MAPI")
Set Folder = Namespace.GetDefaultFolder(6)
Set myMail = Folder.Items.Find ("[Subject] = ""Test""")
myMail.Display
End Sub
Run Code Online (Sandbox Code Playgroud) 在一个Sub,我想触发一个Click事件.例如,对于给定的Button,ButtonCommand1我可以通过运行代码来完成此操作:
Sub test()
Call Sheet1.ButtonCommand1_Click
End sub
Run Code Online (Sandbox Code Playgroud)
,在那里ButtonCommand1_Click是Public Sub写的Sheet1.
但是,我的问题是我在运行sub本身之前不知道要点击的Button的名称.所以我需要这样的东西:
Sub test()
Dim i As Integer
Dim button As String
i = 'SOMETHING
button = "ButtonCommand" & i
Call Sheet1.button_Click
End sub
Run Code Online (Sandbox Code Playgroud)
,在那里,同样,Sub Sheet1.button_Click就已经被包含在Sheet1一个Public Sub所有可能i的.
我尝试了几个选项,即将按钮设置为Object并使用该Shapes集合进行播放以便:
Set button = shapes.range(Array("ButtonCommand" & i)) AND i还尝试通过执行shapes.range(Array("ButtonCommand" & i)).select然后运行来选择正确的形状Application.Click.但没有任何作用.谢谢您的帮助!