【问题标题】:VBA get the last invoice number and save the new invoiceVBA获取最后一个发票号并保存新发票
【发布时间】:2018-07-17 15:10:11
【问题描述】:

我在发票工作簿中有一个发票模板表,我想将它的一些字段保存在另一个工作簿“仅限 Excel 数据”的工作表“发票”中。创建发票时,我想从“仅 Excel 数据”、“发票”表 A 列中获取最后一个发票编号,然后将其加 1。

请注意,发票编号的格式为 ST00001。

之后我想将发票编号保存在工作簿 Excel 数据中,仅包含其详细信息:C10、C11 和 C12,它们代表总数。

我不知道该怎么做,因为我是 vba 的新手,这是我尝试做但没有工作的。

Dim v As Workbook
Set v = Workbooks("Excel data only")

Range("I12").Value = v.Sheets("INVOICES").Cells(v.Sheets("INVOICES").Rows.Count, "A").End(xlUp).Row.Value + 1

【问题讨论】:

  • 你的意思是如果你最后一张发票是ST00015你要退回ST00016?

标签: vba excel


【解决方案1】:

听起来像

Dim v As Workbook, cellValue As String
Set v = Workbooks("Excel data only")
With v.Worksheets("INVOICES")
    cellValue = .Range("A" & .Cells(.Rows.Count, "A").End(xlUp).Row).Value
End With

ActiveSheet.Range("I12").Value = "ST" & Format$((Right$(cellValue, 5) + 1), "00000")

【讨论】:

  • 很高兴听到。 :-)
【解决方案2】:

Sub test_1() Dim v As Workbook, cellValue As String With Worksheets("sheet2") cellValue = .Range("A" & .Cells(.Rows.Count, "A").End(xlUp).Row).Value End With ActiveSheet.Range("B13").Value = "" & Format$((Right$(cellValue, 2) + 1), "") End Sub

这些代码通过转到最后一行编号来增加,您可以编写这些代码来搜索发票之间是否缺少任何数字,它也应该显示出来。例如从 1 到 10 和 7 号的发票丢失了,所以它应该给我丢失的数字,而不是最后一行号增量。

thnx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 2021-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多