将值从一个工作表复制到另一个工作表,然后将结果复制回不同列中的同一工作表

时间:2016-11-22 14:52:20

标签: excel vba excel-vba

我为问题/陈述中的含糊不清道歉,但更容易解释我的问题。

我有一个工具可用于处理工作簿的一张表中的一些数据(sheet1)。以及提供该数据的数据表(sheet2)

基本上我想从数据表的Y2:LastRow中获取每个值(sheet2),通过sheet1中的工具运行该值,然后复制该结果并将其粘贴到同一行但是不同的列(确切地说是AQ) )。

这是我到目前为止所尝试的内容:

With Worksheets("DataSheet")

LastRow = .Range("Y" & .Rows.Count).End(xlUp).row

    For Each cell In Worksheets("DataSheet").Range(Cells(LastRow, 25), Cells(1, 25))

    ThisWorkbook.Worksheets("Conversion Tool").Range("A1").Value = cell
    Sheet1.Range("F14").Copy
    Sheet2.Range(Cells(LastRow, 43), Cells(2, 43)).PasteSpecial (xlPasteValues)

    Next
End With

但是,这会将值粘贴到该列的所有单元格中。我知道可能有一些基本的修复方法,但我仍然可以解决这个问题。

提前致谢。

1 个答案:

答案 0 :(得分:0)

这应该对你有用

With Worksheets("DataSheet")    
    LastRow = .Range("Y" & .Rows.Count).End(xlUp).Row

    For Each Cell In .Range(Cells(LastRow, 25), Cells(1, 25))
        ThisWorkbook.Worksheets("Conversion Tool").Range("A1").Value = Cell
        Sheet1.Range("F14").Copy
        .Range("AQ" & Cell.Row).PasteSpecial xlPasteValues
    Next

End With

它从您复制的单元格中获取行,并在列AQ的同一行中输入新值。