繁体   English   中英

Excel VBA-根据另一列的数据,使用“偏移”获取单元格值

[英]Excel VBA - Get a Cells value by using Offset, based on the data from another column

K列可以包含字符串“ Item Cost”。 当K列包含“项目成本”时,我想偏移到U列,并将该单元格中的值复制到与“项目成本”字符串相同的ROW中。

我可以获取代码来读取和查找列K中的值,但是列U的代码对应部分有问题。

Dim range1 As Range
Dim Answer4 As Variant
LstRw = Cells(Rows.Count, "K").End(xlUp).Row
Set List = CreateObject("Scripting.Dictionary")


For Each range1 In wbFrom.Sheets("Sheet0").Range("K9:K" & LstRw)
  If range1.Offset(0, 0) = "Item Cost " Then
        'MsgBox "found"
         Answer4 = range1.Offset(0, 10).Value  '<---- PROBLEM
  End If
Next

'Msgbox Answer4 'returns nothing

 wbTo.Sheets("Sheet1").Range("D10").Value = Answer4  'returns nothing

似乎您将要使目标范围成为动态Range("D10") )。 照原样的代码将连续重写D10的值。 您是否希望该值与目标范围在同一行中? 如果是这样,请交换

wbTo.Sheets("Sheet1").Range("D10") = range1.Offset(0, 10) 

对于

wbTo.Sheets("Sheet1").Range("D" & range1.Row) = range1.Offset(0, 10) 

For Each range1 In wbFrom.Sheets("Sheet0").Range("K9:K" & LstRw)
  If range1 = "Item Cost " Then
        'MsgBox "found"
         wbTo.Sheets("Sheet1").Range("D10") = range1.Offset(0, 10) 
  End If
Next

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM