0
我有更多的格式問題VBA宏,格式的Excel工作表由Index來總結和賬戶
我在看有指數#事務片的(C列)和帳號的(E列) 。我需要彙總整個索引中的所有條目,然後才能彙總帳戶中的所有條目。我有一些我正在玩的代碼,但我無法弄清楚如何在索引總數後計算帳戶的總數。
Sub TotalIndex()
'
Dim iRow As Integer, iCol As Integer
Dim oRng As Range
Dim fRow As Integer
Dim lRow As Integer
Set oRng = Range("c4")
iRow = oRng.Row
iCol = oRng.Column
fRow = iRow
Do
'
If Cells(iRow + 1, iCol) <> Cells(iRow, iCol) Then
Cells(iRow + 1, iCol).EntireRow.Insert shift:=xlDown
iRow = iRow + 1
Range("j" & iRow).Font.Bold = True
Range("j" & iRow).Value = "Total"
Range("k" & iRow).Font.Bold = True
lRow = iRow - 1
Range("k" & iRow).Value = "=sum(k" & CStr(fRow) & ":k" & CStr(lRow) & ")"
iRow = iRow + 1
fRow = iRow
Else
iRow = iRow + 1
End If
'
Loop While Not Cells(iRow, iCol).Text = ""
'
End Sub
Sub TotalAccount()
'
Dim iRow As Integer, iCol As Integer
Dim oRng As Range
Dim fRow As Integer
Dim lRow As Integer
Set oRng = Range("e4")
iRow = oRng.Row
iCol = oRng.Column
fRow = iRow
Dim laRow As Long
Dim laCol As Long
laRow = Cells.Find(What:="*", _
After:=Range("A1"), _
LookAt:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
Do
'
If Cells(iRow + 1, iCol) <> Cells(iRow, iCol) Then
Cells(iRow + 1, iCol).EntireRow.Insert shift:=xlDown
iRow = iRow + 1
Range("j" & iRow).Font.Bold = True
Range("j" & iRow).Value = "Total"
Range("k" & iRow).Font.Bold = True
lRow = iRow - 1
Range("k" & iRow).Value = "=sum(k" & CStr(fRow) & ":k" & CStr(lRow) & ")"
iRow = iRow + 1
fRow = iRow
Else
iRow = iRow + 1
End If
'
Loop While Not Cells(iRow, iCol).Text = ""
'
End Sub
我把代碼分成兩個函數。總計索引的一個,然後另一個函數是「試圖」將每個索引內的帳戶總計。
有什麼建議?
因此,您可以在那裏看到,一旦我點擊下一個索引,它就會退出。看到我知道問題出在哪裏......但我試圖弄清楚我將如何繼續前進到下一個索引......在生物學圖片中。我知道,當代碼遇到沒有內容的單元時,它會停止。 –
爲什麼你使用宏來做到這一點? Excel內置了分組/劃線功能,你可以使用'Subtotal()'函數來完成你所需要的功能。 – Trashman