在Excel中删除选定的范围

我有下面的代码,简单地删除在Excel中的范围..但我不知道为什么,如果你点击button来删除所选的范围它发生整个范围正在删除,我不知道为什么。 你能提前帮助我吗?

Private Sub cmdDel_Click() cmdEdit.Enabled = False: cmdAdd.Enabled = False cmdClose.Caption = "CANCEL" If MsgBox("Delete this record?", vbYesNo + vbQuestion, "Message") = vbYes Then Range("A" & r & ":" & "V" & r).Delete r = 0 MsgBox "Record deleted!", vbExclamation, "Message" End If Call UserForm_Activate End Sub 

这很简单,因为r的值是0,所以你的string实际上变成了

 Range("A:V").Delete 

在删除之前设置r的值,问题就会消失

另外,如果您正在手动select范围并删除范围,那么使用这个

 Selection.Delete