粘贴数据后取消选择列

vic*_*tor 2 excel vba

这可能非常简单,但我无法解决它。

我可以通过使用从我复制数据的位置释放列,Application.CutCopyMode=False但仍然选择粘贴数据的列,我ActiveSheet.EnableSelection = xlNone按照论坛之一中的建议进行了尝试 ,但没有任何成功,其余代码工作正常:

Dim wb As Workbook
Dim t1 As Worksheet
Dim r As Worksheet

Set wb = ActiveWorkbook
Set t1 = Sheets("dataT1")
Set r = Sheets("HPV1report")

t1.Range("D3:CR5").Copy
r.Range("A2").PasteSpecial _
    Paste:=xlPasteValues, _
    Operation:=xlNone, _
    SkipBlanks:=False, _
    Transpose:=True
    Selection.EntireColumn.AutoFit
End sub
Run Code Online (Sandbox Code Playgroud)

我能想到的另一件事是选择单元格 A1,这样该列就会免费,但如果可以的话,我更愿意使用 select。

Pᴇʜ*_*Pᴇʜ 5

您不能真正取消选择单元格,因为工作表的本质是始终有一个选定的单元格。

可能没有选定单元格的唯一原因是

  • 您选择一个对象,如控件/按钮等。
  • 或保护工作表免受@moosli 指出的用户交互影响。

所以正确的方法是,正如您已经发现的:
选择任何其他单元格,例如。A1.

Worksheets("MySheet").Range("A1").Select
Run Code Online (Sandbox Code Playgroud)