小编Mic*_*ael的帖子

选择多个页面时,在Excel中创建警告,以防止意外覆盖单元格

我正在尝试编写一些Visual Basic代码,以防止任何人在选择多个工作表时意外覆盖多个工作表中的单元格.

但我想要在多个工作表上覆盖单元格的选项,如果在任何阶段都需要.

因此,当我选择了多个工作表时,我希望弹出一个包含2个选项的工具,如下所示:"您确定要覆盖所选工作表中的单元格吗?" 好的取消

我想我差不多有下面的代码了,但是如果我选择了3张,那么弹出窗口会出现3次(每页一次).当然,我只想让弹出窗口出现一次,无论我选择了多少张纸.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
   If ActiveWindow.SelectedSheets.Count > 1 Then
   If MsgBox("Are you sure you want to overwrite the cells across the sheets you have selected?", vbOKCancel) = vbCancel Then Exit Sub
       Application.EnableEvents = False
       Application.Undo
    End If
   Application.EnableEvents = True
End Sub
Run Code Online (Sandbox Code Playgroud)

或者更好的解决方案实际上是:

"你确定要覆盖所选纸张上的单元格吗?"

是(继续所有选定的页面),

否(选择当前页面并继续),

取消(取消操作并保持当前选择).

excel vba excel-vba

5
推荐指数
1
解决办法
305
查看次数

标签 统计

excel ×1

excel-vba ×1

vba ×1