首页 > 解决方案 > 将另一个工作表中的一个单元格中的一串数据复制到最后一行

问题描述

需要帮助将相同 ID 从另一个工作表复制到此工作表到最后一行。

所以下面的代码是我到目前为止得到的,一切都很完美。我现在需要的是使用宏已经运行的数据将 ID 复制到最后一行。

下面的代码基本上是我想要的,但我希望它多次复制到最后一行,并且必须是动态的

Set CopyRng3 = wsCopy.Range("B1")
      'Currency
CopyRng3.Copy
        wsDest.Range("B" & lDestLastRow).PasteSpecial xlPasteValues

 For Each Col In CopyColumns

      lDestLastRow = wsDest.Cells(wsDest.Rows.Count, "C").End(xlUp).Offset(1).Row
      lCopyLastRow = wsCopy.Cells(wsCopy.Rows.Count, Col).End(xlUp).Row
      'Price Date
      Set copyrng = wsCopy.Range(Col & "30:" & Col & lCopyLastRow)
      'Price
      Set CopyRng2 = wsCopy.Range(copyrng(1, 1).Offset(0, 1), copyrng(copyrng.Rows.Count, 1).Offset(0, 1))
      'ID
      Set CopyRng3 = wsCopy.Range("B1")
      'Currency
      Set CopyRng4 = wsCopy.Range("C1")



        If copyrng.Find("#N/A", LookIn:=xlValues) Is Nothing Then
        copyrng.Copy
        wsDest.Range("C" & lDestLastRow).PasteSpecial xlPasteValues
        CopyRng2.Copy
        wsDest.Range("J" & lDestLastRow).PasteSpecial xlPasteValues
        CopyRng3.Copy
        wsDest.Range("B" & lDestLastRow).PasteSpecial xlPasteValues
        CopyRng4.Copy
        wsDest.Range("I" & lDestLastRow).PasteSpecial xlPasteValues

       End If

     Next Col


     For i = LoaderHeaderRow + 1 To lDestLastRow - 1
        'Action
        wsDest.Cells(i, RecAction) = "New"
        'Pricelist
        wsDest.Cells(i, Pricelist) = "RPIA.SIPF FV2"

     Next i

     MsgBox "Done"

本质上,我想从“Wscopy”复制 ID,然后将其粘贴到最后一行,然后循环到 WsDest 中的下一列,这就是我所期望的。谁能帮我这个?提前致谢

WsCopy worksheet
coulmn     B        E          H
        ABC123    ABC246    ABC345           

WsDEst worksheet

column
          B
         ABC123
         ABC123
         ABC123
         ABC123
         ABC246  
         ABC246 
         ABC246 
         ABC345
         ABC345
         ABC345

标签: excelvba

解决方案


推荐阅读