将3个单元从发票复制到销售日志表

我有一个当前的macros代码来保存和创build我的发票副本,并更改​​inv#,TY GOOGLE!

我想添加一个额外的function,所以当我改变inv#,保存副本到文件夹,它也复制数据从3个单元的发票表单到我在同一工作簿创build的销售日志表

所以我想从发票表单复制这3个单元格的数据

J4=Date J5=Invoice Number K33=Amount 

到销售日志表单

 A1=Date A2=Invoice Number A3=Amount 

因为我在某个时候会有1000个发票,所以我需要每个新的复制数据都不要删除之前的数据

这是我想要添加到模块的当前代码

 Sub NextInvoice() Range("J5").Value = Range("J5").Value + 1 Range("A9").MergeArea.ClearContents End Sub Sub SaveInvWithNewName() Dim NewFN As Variant ' Copy Invoice to a new workbook ActiveSheet.Copy NewFN = "C:\Users\Mike\Desktop\Invoices\" & Range("J5").Value & ".xlsx" ActiveWorkbook.SaveAs NewFN, FileFormat:=xlOpenXMLWorkbook ActiveWorkbook.Close NextInvoice End Sub 

已发布的其他变体:

[Range] [Range] (仅限数值)

 Sub SaveToSalesLog() With Sheets("SalesLogSheet") .[A1] = Sheets("InvoiceSheet").[J4] .[A2] = Sheets("InvoiceSheet").[J5] .[A3] = Sheets("InvoiceSheet").[K33] End with End Sub 

Array [Range] (仅限数值)

 Sub test2() Dim I As Worksheet: Set I = Sheets("InvoiceSheet") Dim S As Worksheet: Set S = Sheets("SalesLogSheet") Dim cl As Range, x%: x = 0 For Each cl In S.[A1:A3] cl.Value = Array(I.[J4], I.[J5], I.[K33])(x): x = x + 1 Next End Sub 

[Range].copy [Range] (包括单元格格式)

 Sub test3() With Sheets("InvoiceSheet") .[J4].Copy Worksheets("SalesLogSheet").[A1] .[J5].Copy Worksheets("SalesLogSheet").[A2] .[K33].Copy Worksheets("SalesLogSheet").[A3] End With End Sub 

[Range].copy [Range] (仅限数值)

 Sub test4() With Sheets("InvoiceSheet") .[J4].Copy: Worksheets("SalesLogSheet").[A1].PasteSpecial xlValues .[J5].Copy: Worksheets("SalesLogSheet").[A2].PasteSpecial xlValues .[K33].Copy: Worksheets("SalesLogSheet").[A3].PasteSpecial xlValues End With End Sub 

只需使用指定RangeRangeexpression式的Worksheet.Range()属性即可:

 Sub SaveToSalesLog() WorkSheets("SalesLogSheet").Range("A1") = WorkSheets("InvoiceSheet").Range("J4") WorkSheets("SalesLogSheet").Range("A2") = WorkSheets("InvoiceSheet").Range("J5") WorkSheets("SalesLogSheet").Range("A3") = WorkSheets("InvoiceSheet").Range("K33") End Sub