VBA:使用循环时从另一个工作表获取数据

时间:2015-05-13 07:33:23

标签: excel vba excel-vba

我很难弄清楚我的代码可能做错了什么,因为它目前还没有工作。问题是,我试图从另一张纸上获取一个值,并从第二张纸上的数据连接起来。

我想说的是这样的:

Sub Test()
Dim config As Variant
Dim psize As String

'im trying to get the last row

With Sheets("Sheet2")
    LastRowC = .Range("C" & .Rows.Count).End(xlUp).Row
End With


For Each MyCell In Range("D2:D" & LastRowC)
    'trying to get a data from another sheet (This is my problem so far as this code aint working.)
    psize = Sheets(1).Range("P" & MyCell.Row).Value
    config = Split(Range("C" & MyCell.Row), "-")
    'as you can see, im trying to echo out psize but to no avail
    MyCell.Value = config(0) & "-" & config(1) & "-" & psize

Next MyCell

End Sub

我的问题是psize变量,因为它没有得到我在表1中所需的值。希望你们能帮助我。谢谢!

1 个答案:

答案 0 :(得分:0)

您没有在此行中明确设置范围对象的上下文。这是否参考了您期望的范围?为了确保这一点,请尝试使用SHEET.RANGE:

config = Split(Range("C" & MyCell.Row), "-")

更新 - 实际上,也在这一行中:

For Each MyCell In Range("D2:D" & LastRowC)