将范围变量粘贴到另一个变量的位置

时间:2018-02-10 01:22:34

标签: excel vba excel-vba variables range

我使用column_find设置要粘贴的位置。我想在该单元格中粘贴范围(user_data)。宏运行但只粘贴范围中的1个值。我做错了什么?

Sub Column_Locate()

    Dim current_month As Variant
    Dim column_find As Range
    Dim user_data As Range

    current_month = Worksheets("Inputs").Cells(4, 4).Value

    Set column_find = Worksheets("Feeder").Range("E2:CZ2").Find(current_month, LookIn:=xlValues, LookAt:=xlWhole).Offset(8, -1)

    Debug.Print column_find.Address(0, 0)

    Set user_data = Worksheets("Unique Users Data").Range("B2:C3")

    Worksheets("Feeder").Select

    column_find = user_data

End Sub

1 个答案:

答案 0 :(得分:1)

你必须相应地调整“目标”范围(即String)的大小(即column_find

也避免使用选择 / 选择 / 激活 / ActiveXXX 模式,这既耗时又容易让您很快失去对范围参考的控制并采用完全合格的范围参考模式(例如使用user_data构造)

所以你要编码(评论中的解释):

With... End With