尝试创建自动发票Excel VBA

定居者

我正在尝试从excel中的客户数据列表中创建自动发票。我在宏和一些VBA方面有经验,但之前没有做过深入的介绍。我在此处复制所需的基本模板我复制了大部分结构并更改了所需的内容,但它对我不起作用。我尝试自己研究它并研究其他方法,但现在恐怕不知所措。这是我的代码,出现“运行时错误1004”。如果有人可以告诉我需要什么来解决它,我将不胜感激。

代码:

Private Sub CommandButton1_Click()

Dim customer As String
Dim customerid As String
Dim invoicenumber As Long
Dim r As Integer
Dim mydate As String
Dim path As String
Dim myfilename As String
Dim providercount As Integer
Dim basefee As Integer
Dim faxlines As Integer
Dim faxpages As Integer
Dim faxbundles As Integer
Dim invoicedate As String
Dim lastrow As Long

'This row is causing the error 
lastrow = Sheets("Greenway").Range(“A” & Rows.Count).End(xlUp).Row


r = 8


For r = 8 To lastrow


If Cells(r, 14).Value = “done” Then GoTo nextrow


customer = ThisWorkbook.Sheets(“Greenway”).Cells(r, 3).Value
customerid = ThisWorkbook.Sheets(“Greenway”).Cells(r, 2).Value
providercount = ThisWorkbook.Sheets(“Greenway”).Cells(r, 5).Value
basefee = ThisWorkbook.Sheets(“Greenway”).Cells(r, 6).Value
faxlines = ThisWorkbook.Sheets(“Greenway”).Cells(r, 7).Value
faxpages = ThisWorkbook.Sheets(“Greenway”).Cells(r, 10).Value
faxbundles = ThisWorkbook.Sheets(“Greenway”).Cells(r, 11).Value
invoicenumber = ThisWorkbook.Sheets(“Greenway”).Cells(r, 15).Value
invoicedate = ThisWorkbook.Sheets(“Greenway”).Cells(r, 16).Value

Cells(r, 14).Value = “done”
Application.DisplayAlerts = False
Workbooks.Open ("C:\Users\Andrew\Dropbox (Updox)\All Company\DEPT-Finance\Billing\Greenway\Invoices\2015Invoices\Template.xlsx")
ActiveWorkbook.Sheets(“invoice”).Activate

ActiveWorkbook.Sheets("Invoice").Range("E7").Value = customername
ActiveWorkbook.Sheets("Invoice").Range("E5").Value = invoicenumber
ActiveWorkbook.Sheets("Invoice").Range("A16").Value = providercount
ActiveWorkbook.Sheets("Invoice").Range("A17").Value = faxlines
ActiveWorkbook.Sheets("Invoice").Range("A18").Value = faxpages
ActiveWorkbook.Sheets("Invoice").Range("A19").Value = faxbundles
ActiveWorkbook.Sheets("Invoice").Range("E8").Value = customerid
ActiveWorkbook.Sheets("Invoice").Range("D16").Value = basefee
ActiveWorkbook.Sheets(“invoice”).Range("E4").Value = invoicedate

path = "C:\Users\Andrew\Dropbox (Updox)\All Company\DEPT-Finance\Billing\Greenway\Invoices\2015Invoices\"
mydate = Date
mydate = Format(mydate, “mm.yy”)

ActiveWorkbook.SaveAs Filename:=path & “_” & customername & “_” & mydate & “.xlsx”
myfilename = ActiveWorkbook.FullName
SetAttr myfilename, vbReadOnly
Application.DisplayAlerts = True
ActiveWorkbook.PrintOut copies:=1

ActiveWorkbook.Close SaveChanges:=False

nextrow:

Next r


End Sub    
学术界

也许您应该尝试此操作,以找到Col A中的最后一行,并解决“运行时错误1004”:

With Sheets("Greenway")
    lastrow = .Range("A" & .Rows.Count).End(xlUp).Row
End With

或者:

lastrow = Sheets("Greenway").Range("A" & Sheets("Greenway").Rows.Count).End(xlUp).Row

代替:

lastrow = Sheets("Greenway").Range(“A” & Rows.Count).End(xlUp).Row

注意之前的点(.)分隔符Rows表示您要获取属性Rows OF Sheets(“ Greenway”)对象。


对于您现在得到的“运行时错误9”错误,请尝试:

customer = Sheets("Greenway").Cells(r, 3).Value

代替:

customer = ThisWorkbook.Sheets(“Greenway”).Cells(r, 3).Value

希望它有用!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Excel vba 下一个发票编号,按月创建自动目录文件夹

来自分类Dev

自动分组Excel VBA

来自分类Dev

Excel VBA自动筛选

来自分类Dev

尝试通过 VBA 和 OLEDB 在 excel 中创建表格

来自分类Dev

自动文本大写Excel VBA

来自分类Dev

Excel VBA自动填充目标

来自分类Dev

Excel VBA 自动筛选代码

来自分类Dev

Excel VBA 自动填充问题

来自分类Dev

在Excel VBA中新会计年度开始时,将自动发票生成重置为000 /“当前年度”

来自分类Dev

Excel VBA创建下拉列表

来自分类Dev

Excel VBA创建JSON负载

来自分类Dev

VBA Excel动态表单创建

来自分类Dev

创建动态Excel图表VBA

来自分类Dev

尝试通过VBA代码创建Vlookup公式

来自分类Dev

尝试使用excel vba从html显示图像

来自分类Dev

尝试搜索月/年列表(excel vba)

来自分类Dev

Excel Vba,创建数据透视表,按值前10位自动显示,错误1004

来自分类Dev

VBA Excel宏消息框自动关闭

来自分类Dev

VBA Excel自动更改颜色和值

来自分类Dev

Excel VBA自动更新列(日期)

来自分类Dev

Access 2013 VBA自动使Excel丢失窗口

来自分类Dev

使用VBA在Excel中设置自动筛选

来自分类Dev

VBA代码以在Excel中自动单击确定

来自分类Dev

Excel VBA自动调整大小的ListView列

来自分类Dev

VBA Excel宏消息框自动关闭

来自分类Dev

使用VBA自动生成Excel表

来自分类Dev

自动化Excel VBA函数

来自分类Dev

Excel VBA结束自动保存准时循环

来自分类Dev

Excel VBA编程执行VBA