发布网友 发布时间:2022-04-23 21:47
共5个回答
热心网友 时间:2023-10-10 21:47
你的要求没法无法用系统默认的msgbox,实现!可以自定义个弹出窗口来实现你的要求!
但可以如下,简单实现代替下
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim n As Long
n = MsgBox("选择【终止】:选项1" & vbCrLf & "选择【重试】:选项2" & vbCrLf & "选择【忽略】:选项3", vbAbortRetryIgnore, "提示")
Debug.Print n
Cells(1, 1) = n
End Sub
热心网友 时间:2023-10-10 21:48
这应该不能用Msgbox,不过可以用窗体来实现。
做一个窗体,把BorderStyle改成3,然后放三个按钮,用form.show调出,在按钮的单击事件中输入form.unload以关闭(上面两个form均是一个窗体对象)。
热心网友 时间:2023-10-10 21:48
Private Sub ListBox1_Click()
If Me.ListBox1.Value = "选项一" Then MsgBox "a=1"
If Me.ListBox1.Value = "选项二" Then MsgBox "a=2"
If Me.ListBox1.Value = "选项三" Then MsgBox "a=3"
End Sub
Private Sub UserForm_Initialize()
ar = Array("选项一", "选项二", "选项三")
Me.ListBox1.List = ar
End Sub
热心网友 时间:2023-10-10 21:49
msgbox弹出对话框无法包括选项控件.按钮的文字也是固定的.只能包括:确定,取消,是,否,重试,忽略,终止.
热心网友 时间:2023-10-10 21:49
submsg()dimrngasrangesetrng=range("a1:b100")'假设范围为a1:b100ifnotrng.find("")isnothingthenmsgboxrng.address&"范围内有空值"setrng=nothingendsubSubmsg()DimrngAsRangeSetrng=Range("a1:b100")'假设范围为a1:b100IfNotrng.Find("")IsNothingThenMsgBoxrng.Address&"范围内有空值"ElseMsgBoxrng.Address&"范围内无空值"EndIfSetrng=NothingEndSub