每当用户启动“MyMacro”时,我想清除取消选择当前选择。
我正在使用以下代码:
Sub MyMacro()
If Not IsSheetExists("Memory") Then
Worksheets.Add(After:=Worksheets(Worksheets.Count)).name = "Memory"
End If
Sheets("Memory").Visible = xlSheetVisible 'change to xlSheetVeryHidden
ActiveWorkbook.Sheets("Sheet1").Activate
ClearAllSheets
'......
End Sub
Sub ClearAllSheets()
For Each sh In ActiveWorkbook.Sheets
sh.Cells.Clear
sh.Buttons.Delete
Selection.Clear
Next sh
End Sub
为什么不Selection.Clear
清除取消选择当前选择?
答案 0 :(得分:2)
好的,
.Clear
用于清除单元格/范围内的内容(和格式),但不能取消选择
因此,当您使用Selection.Clear
时,没有任何反应
正如您所提到的,为什么不选择虚拟单元?
答案 1 :(得分:1)
Selection.Clear
不起作用,因为您没有任何选定的范围。
如果你这样编码:
sh.Cells.Select
Selection.Clear
然后它可能会起作用。
但最好不要使用Select
。
<强>更新强> 加上这个:
Dim rng as range
Set rng = Selection
或在你的情况下:
set rng = sh.Application.Selection
然后执行:
Selection.Clear.
它将清除当前选定的范围。
答案 2 :(得分:0)
试试这个
Selection.ClearContents
答案 3 :(得分:-1)
尝试
Application.CutCopyMode = False
对我有用
最诚挚的问候