将多个单元格(不在范围内)从一个工作表复制到另一个工作表


0

我已经搜遍过了,我无法找到任何关于将不同行和列中的多个单元格复制到另一张表格中的单行的内容。

例如,将工作表1中的单元格A10,F2,F3和F34复制到工作表2中的A2并开始新行。

目的是从发票中复制某些信息(表1)

  • A10 - 客户
  • F2 - 日期
  • F3 - 发票编号
  • F34 - 总成本

到另一张表中的一行进行报告(表2)

当我完成新发票时,我希望运行相同的宏将这些单元格复制到工作表2中的下一个空行。


欢迎来到超级用户。此站点是针对特定问题而不是脚本编写服务。您需要与我们分享您的尝试以及您到底在哪里,以便我们可以尝试从那里帮助您。您是否考虑过在隐藏行中引用这些单元格(例如Z40:Z44),然后将该行数据复制到另一张表格中?
CharlieRB 2015年

Answers:


0

这个VBA宏将这样做:

Public Sub resume_invoice()
    Dim wkb As Workbook
    Dim wks, wks1 As Worksheet
    Set wkb = ThisWorkbook
    Set wks = wkb.Sheets(1)
    Set wks1 = wkb.Sheets(2)
    use_row = wks1.Cells(wks1.Rows.Count, "A").End(xlUp).Row
    use_row = use_row + 1
    If wks.Cells(3, 6) <> wks1.Cells(use_row - 1, 3) Then
        wks1.Cells(use_row, 1) = wks.Cells(10, 1)
        wks1.Cells(use_row, 2) = wks.Cells(2, 6)
        wks1.Cells(use_row, 3) = wks.Cells(3, 6)
        wks1.Cells(use_row, 4) = wks.Cells(34, 6)
        Set wkb = Nothing
        Set wks = Nothing
        Set wks1 = Nothing
    End If
End Sub

转到宏/ VBA,在ThisWorkbook下插入一个模块并粘贴代码。

为了便于使用,您可以指定一个按钮来执行它。


0

为了简化和简化调试,请使用辅助单元。

例如,在未使用的行中,第99行链接到四个源单元格(A99 = A10,B99 = F2,C99 = F3,D99 = F34)。然后宏很简单。隐藏第99行以保持清洁。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.