如何在 Range 方法的地址中使用变量

How to use a variable in the address of the Range method

如何在 Range 中设置变量?这是我的代码:

Sub Makro1()
    Dim value As String
    ThisWorkbook.Sheets("Arkusz1").Activate
    ThisWorkbook.Sheets("Arkusz1").Range("R3").Select
    value = ThisWorkbook.Sheets("Arkusz1").Range("R3").value
    ThisWorkbook.Worksheets("Arkusz1").Range("C:value").Select '<--- Here is the BUG
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
End Sub

未测试

考虑:

Sub Makro1()

Dim valuee As String

ThisWorkbook.Sheets("Arkusz1").Activate
ThisWorkbook.Sheets("Arkusz1").Range("R3").Select

valuee = ThisWorkbook.Sheets("Arkusz1").Range("R3").value

ThisWorkbook.Worksheets("Arkusz1").Range("C" & valuee).Select

Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
Application.CutCopyMode = False
End Sub

对于范围,格式为: startColumn & StartRow & ":" & EndColumn & EndRow EndColumn 和 EndRow 是可选的,未指定则它们将与 Startcolumn 和 StartRow 相同 例如,要引用从 A 列第 1 行到 D 列第 20 行的范围,请使用:

sAddress = "A1:D20"