使Outlook中的用户窗体保持在屏幕上-VBA

使Outlook中的用户窗体保持在屏幕上-VBA,vba,outlook,userform,Vba,Outlook,Userform,因此,我创建了一个嵌入Outlook的VBA宏。代码运行一个userform 当我运行宏时: 当前: 当我最小化Outlook时,我的userform也会最小化 我想要什么: 当我最小化outlook时,我希望我的用户表单保持在屏幕上 关于如何实现这一点有什么想法吗?我正在使用vbModeless显示我的userform,因为我希望用户在userform运行时访问outlook内容 尝试将其添加到代码中 Private Sub UserForm_Initialize() Dim

因此,我创建了一个嵌入Outlook的VBA宏。代码运行一个userform

当我运行宏时:

当前:

  • 当我最小化Outlook时,我的userform也会最小化
我想要什么:

  • 当我最小化outlook时,我希望我的用户表单保持在屏幕上

关于如何实现这一点有什么想法吗?我正在使用vbModeless显示我的userform,因为我希望用户在userform运行时访问outlook内容

尝试将其添加到代码中

Private Sub UserForm_Initialize()
    Dim olapp As Object
    Set olapp = GetObject(, "Outlook.Application")
    olapp.ActiveWindow.WindowState = 1
End Sub
这将在显示用户表单时最小化Outlook。

不完全是你想要的(你描述的有点复杂),但效果几乎相同。

谢谢你的回复,但我仍然有同样的问题;当我最小化outlook时,userform也会最小化。这只会在用户窗体第一次运行时最小化outlook。但是如果我最大化outlook,然后再次最小化…userform也会最小化。我似乎找不到解决这个问题的方法,也许没有办法实现我想要的。我可能需要编写一个.net独立应用程序。