Vba 在.Range命令中选择带有r1c1符号的单个单元格

Vba 在.Range命令中选择带有r1c1符号的单个单元格,vba,excel,cell,selection,Vba,Excel,Cell,Selection,我试图选择带有r1c1符号的单个单元格,但我不知道如何选择,到目前为止,我已经找到了如何选择的方法。我想要达到的是这样的目标 图纸(1)。范围(“A1,C1,F1,H1”)。选择,但我想用r1c1符号来完成 工作表(1).范围(单元格(1,1),单元格(1,3)…选择,但使用此选项,我只能选择“到”单元格之间的一个范围,并且我不能添加两个以上的单元格而不会出错 有没有办法用range命令和c1r1表示法做到这一点?使用Union: With Worksheets("Sheet1") 'Chang

我试图选择带有r1c1符号的单个单元格,但我不知道如何选择,到目前为止,我已经找到了如何选择的方法。我想要达到的是这样的目标

图纸(1)。范围(“A1,C1,F1,H1”)。选择,但我想用r1c1符号来完成

工作表(1).范围(单元格(1,1),单元格(1,3)…选择,但使用此选项,我只能选择“到”单元格之间的一个范围,并且我不能添加两个以上的单元格而不会出错

有没有办法用range命令和c1r1表示法做到这一点?

使用Union:

With Worksheets("Sheet1") 'Change to your sheet name.
    Dim Rng as Range
    Set rng = Union(.Cells(1,1),.Cells(1,3),.Cells(1,6),.Cells(1,8))
    Debug.print rng.Address(0,0)
End With
注:

  • 应始终为所有范围对象指定子对象
  • 不鼓励使用
    .Select
    ,99%的时间都可以避免。见:

  • 谢谢你的回答,但我真的以select为例。我将使用的命令是Copy。我不太明白你用的符号。我习惯于这样一种连续的表示法:表(2).范围(“E45,F45,G45,H45,I45,J45”).复制表(4).单元格(I+3,21).粘贴特殊的粘贴值表(2).范围(“E15:E20”).ClearContentsso:
    联合(表(2).单元格(1,1),表(2).单元格(1,3),表(2).单元格(1,6),表(2).单元格(1,8)).Copy
    使用
    With
    可以避免多次键入图纸名称。在VBA中调用“Range”对象的“Cells”属性通常不被描述为使用“r1c1”符号。请检查此链接,例如r1c1参考:“”。“.Range”也不是命令。。。只是说…@Gene你是对的op想换成R1C1 o。工作表可以使用工作表上的。Vba仍然需要范围内的A1引用,除非on在运行中进行一些奇特的函数更改。还有,我在哪里声明range是一个命令?你可能在这里指的是“快捷方式符号”,但我鼓励你查看这里的所有链接