我试图用代码来计算增值税和总在同一条直线E(同一行净额)但增值税的答案远高于净额的20%。与总金额相同的问题。我认为这两个数字可能会拿出一些其他数字,而不仅仅是净额。下面是我的代码的一部分,请给我一些建议吗?非常感谢尝试在E中的同一行净额计算增值税,但得到的答复是不正确的
Option Explicit
Sub copy_info()
Dim i As Long, j As Long, lastRow As Long
Dim sh As Worksheet
With Sheets("Order List")
.Range("A22:F50").Clear
.Range("A21") = "PART CODE"
.Range("B21") = "DESCRIPTION"
.Range("C21") = "PRICE"
.Range("D21") = "QUANTITY"
.Range("E21") = "NET AMOUNT"
.Range("F21") = "SHEET NAME"
.Range("A21:F21").HorizontalAlignment = xlCenter
.Range("A21:F21").VerticalAlignment = xlCenter
.Range("A21:F21").Font.Bold = True
End With
j = 22
For Each sh In ActiveWorkbook.Sheets
If sh.Name <> "Order List" And sh.Name <> "INDEX" And sh.Name <> "SELECTOR" Then
lastRow = sh.Cells(sh.Rows.Count, "B").End(xlUp).Row
For i = 28 To lastRow
If sh.Range("G" & i) > 0 And sh.Range("G" & i) <> "QUANTITY" Then
sh.Range("b" & i).Copy Destination:=Worksheets("Order List").Range("A" & j)
sh.Range("e" & i & ":g" & i).Copy Destination:=Worksheets("Order List").Range("B" & j)
Sheets("Order List").Range("E" & j) = Sheets("Order List").Range("C" & j) * Sheets("Order List").Range("D" & j)
Sheets("Order List").Range("F" & j) = sh.Name
Sheets("Order List").Range("B" & j + 1) = ""
Sheets("Order List").Range("B" & j + 2) = "VAT"
Sheets("Order List").Range("E" & j + 1) = ""
Sheets("Order List").Range("E" & j + 2) = Application.WorksheetFunction.Sum(Columns("E:E")) * 0.2
Sheets("Order List").Range("B" & j + 3) = "TOTAL"
Sheets("Order List").Range("E" & j + 3) = Application.WorksheetFunction.Sum(Columns("E:E"))
j = j + 1
End If
Next i
End If
Next sh
在你列的求和E你没有定义你是summi的表单NG。 –
我定义之后,仍然显示错误的答案。 –
你正在总结'E列'。这是你真正想要的吗? – jsotola