Excel 中除 MsgBox 以外的消息提醒?

Message alert other than MsgBox in Excel?

除了 MsgBox 之外,Excel 中还有其他显示消息的方法吗?

我在考虑安全 alert/enable 宏警报样式。我可以使用相同的 space 来显示一些文本吗?

我试图在用户不点击按钮的情况下通知他们。

如果你想在不需要用户交互的情况下显示消息,你可以创建一个用户表单并显示它无模式,这意味着在显示表单后正常执行你的VBA 继续。

示例(表格="UserMsgBox",标签="Label1")

Sub Test()
    UserMsgBox.Show vbModeless

    UserMsgBox.Label1.Caption = "This is my 1st message to you"
    UserMsgBox.Repaint
    Application.Wait Now + TimeValue("00:00:02")

    UserMsgBox.Label1.Caption = "This is my 2nd message to you"
    UserMsgBox.Repaint
    Application.Wait Now + TimeValue("00:00:02")

    UserMsgBox.Label1.Caption = "This is my 3rd and last message to you"
    UserMsgBox.Repaint
    Application.Wait Now + TimeValue("00:00:02")

    UserMsgBox.Hide

End Sub

其次,您可以使用

在Excel应用程序window底部的状态栏区域显示文本
Application.StatusBar = "My bottom line message to you"

我宁愿使用 OnTime 来安排任务,也不愿使用 Wait。等待可能会阻止所有其他 Excel activity。因此,用户必须等到表单消失。使用 OnTime,用户仍然可以选择同时做一些事情。所以,这是我的提议(也使用表格方法):

Public Sub showform()

Load UserForm1
UserForm1.StartUpPosition = 0
UserForm1.Left = Application.Left + Application.Width * 0.9 - UserForm1.Width
UserForm1.Top = Application.Top + Application.Height * 0.9 - UserForm1.Height
UserForm1.Show (False)
Application.OnTime Now + TimeValue("0:00:05"), "closeform"

End Sub

Public Sub closeform()

UserForm1.Hide
Unload UserForm1

End Sub

在回答问题时,请参阅下面的 link 所有类型的 msgbox 列表

下面还有使用语法 - 希望对您有所帮助!

MsgBox("Some Text", vbCritical, "Message title")

https://msdn.microsoft.com/en-us/library/139z2azd%28v=vs.90%29.aspx

干杯

您可以使用这种类型的消息框代替默认的 VBA MsgBox。它支持 Unicode

Application.Assistant.DoAlert "Hoc Excel Online Title", "your message", 0, 4, 0, 0, 0