需要将excel值替换为另一个工作表中的其他值。有些值不需要替换,所以我需要一个公式或代码来识别它。两张纸的顺序不同。对于前者 列“通过Alt_rep划分”(6)是要替换的更新值(200 +行) 第2页“通过Alt_rep划分”(14000 +行)
答案 0 :(得分:0)
我认为将.Find
和.Offset
数据从其他工作表复制到当前工作表:
Dim t_val as Variant
t_val = other_sheet.Range("A:A").Find(What:="value to lookup", LookIn:=xlValues, _
LookAt:=xlWhole, MatchCase:=True).Offset(0, 2)
current_sheet.Range("G:G").Find(What:="value to lookup", LookIn:=xlValues, _
LookAt:=xlWhole, MatchCase:=True).Offset(0, 6) = t_val
我不得不将变量用于不同的宏,并且可以在没有它的情况下完成......但这是我认为应该工作的吗?除非不需要偏移,否则偏移量需要与您希望数据的位置重合。在这种情况下,你可以把它拿出来,然后你需要的只是:
other_sheet.Range("A:A").Find(What:="value to lookup", LookIn:=xlValues, _
LookAt:=xlWhole, MatchCase:=True).copy _
destination:= current_sheet.Range("G:G").Find(What:="value to lookup", _
LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)