簡體   English   中英

循環遍歷列並將每個值復制/粘貼到另一個工作簿

[英]Loop through column and copy/paste each value to another workbook

我必須創建一個宏來工作在excel和迷路,並想知道你是否可以提供幫助。

所以我有兩本工作簿。 第一個工作簿(TEST)有一個我需要打印的表單,第二個工作簿(Coin Test)有原始數據。 我在表格工作簿中有一個單元格,如果我從原始數據工作簿中粘貼項目編號,它將自動從原始數據表中通過公式提取所有項目信息並填寫表格(項目編號,項目規格,商品價格等)。

所以我需要做的是自動轉到原始數據表,從C1復制第一個項目編號然后轉到表單工作簿並將該項目編號粘貼到單元格J2中,它將自動填寫表單然后打印然后返回到原始數據工作簿並轉到下一個項目編號並沖洗並重復。 我試圖把代碼拼湊在一起,到目前為止這里是我的怪物。 謝謝大家的幫助

Sub Macro4()

'Macro4 Macro

  Sheets("TESTING").Select
  Selection.Copy

  Sheets("COIN TESTING").Select
  ActiveSheet.Paste

  For Each Cell In Range("C$:C$")

    If Cell.Value = vbNullString Then Exit For

    Range("C$:C$").Value = Cell.Value
    Cell.Offset(1, 0).Value = Range("J2").Value

  Next

End Sub

未經測試:

Sub Macro4()

    Dim c As Range, rng As Range

    'get the range to loop over
    with Sheets("COIN TESTING")
        Set rng = .Range("C1:C" & .cells(.rows.count,3).end(xlUp).Row)
    end with

    'process each cell in turn
    For each c in rng.cells

        'is there a value to transfer?
        If Len(c.value) > 0 then
            'directly assign the value - no need for copy/paste
            Sheets("TESTING").Range("J2").Value = c.value

            'calculate and print out sheet
            Sheets("TESTING").UsedRange.Calculate 'refresh formulas
            Sheets("TESTING").PrintOut

        End if

    Next c

End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM