繁体   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