将弹出窗口添加到宏

时间:2021-01-27 17:27:25

标签: excel vba

我最近发现了一个宏来删除给定工作簿中的隐藏名称。

我想添加的是一个弹出窗口,它首先会显示有多少个名字,以及一个用于运行它的 yes no 按钮。只是为了让用户了解如果他们选择运行该功能需要多长时间。

代码如下:


Dim RangeName As Name


On Error Resume Next
For Each RangeName In Names
    ActiveWorkbook.Names(RangeName.Name).Delete
Next
On Error GoTo 0
End Sub

1 个答案:

答案 0 :(得分:1)

试试这个:

Sub test()

Dim RangeName As Name
Dim answer As Integer
Dim str As String

On Error Resume Next

str = "Do you want to delete " & ActiveWorkbook.Names.Count & " names?"
answer = MsgBox(str, vbQuestion + vbYesNo + vbDefaultButton2, "Message Box Title")

If answer Then
    For Each RangeName In Names
        ActiveWorkbook.Names(RangeName.Name).Delete
    Next
Else
    Exit Sub
End If
On Error GoTo 0

End Sub