Я создаю свой первый модуль, используя VBA, и не знаю, как суммировать строки. Мне было интересно, если кто-нибудь может мне помочь. У меня есть файл транзакций, картинка прилагается:
Я пытаюсь вставить разрыв (пустую строку) между группами дат (сгруппировать все транзакции по определенной дате), а затем сумму каждой суммы в разрыве под каждым столбцом для соответствующей даты. Мой код выглядит следующим образом, но я застрял на том, как создать сумму, так как я не уверен в синтаксисе. Вот код, который я придумал:
Sub InsertRowsBetweenDates()
'
' InsertRowsBetweenDates Macro
' Insert Rows in between two dates that are not equal
'
Dim x As Integer
Dim y As Integer
Dim row1 As Range
Dim row2 As Range
Dim t As Integer 'tracking how many cells to add together
'define x as cell row value
x = 2
'define y as cell row value
y = 3
'start tracker at 0
t = 0
'row 1 and row 2 get their values
Set row1 = Cells(x, 4)
Set row2 = Cells(y, 4)
'Do until there are no more entries in the worksheet (or really until row 1 has no value)
Do Until row1.Value = False
x = x + 1
y = y + 1
Set row1 = Cells(x, 4)
Set row2 = Cells(y, 4)
t = t + 1
'If row 1 and 2 don't equal each other, insert a row above row 2
If row1 <> row2 Then
row2.EntireRow.Insert Shift:=xlDown
'sum up t rows for subtotal and tax [THIS IS WHAT IM STUCK ON]
'skip the break
x = x + 2
y = y + 2
Set row1 = Cells(x, 4)
Set row2 = Cells(y, 4)
t = 0
End If
Loop
End Sub
Как видите, перерыв работает, хотя он работает только для этого файла, поскольку строки и позиции столбцов жестко закодированы, но это начало. На данный момент у меня есть трекер, чтобы отслеживать, сколько строк было подсчитано, и я думаю, что мне просто нужно вставить код для суммирования строк. Как мне добиться этого?