У мене є дані в консивітних рядках, однак вони сортуються в стовпці імені (тобто "А", як зараз, але можуть змінюватися).
> A B C
> Name1 123 rdt
> Name1 256 efh
> Name1 456 ikj
> Name2 123 rfa
> Name3 654 xxd
> Name3 846 olp
> Name6 841 yuf
Я хочу вставити рядок (або дві, будь-яку кількість рядків) після кожної групи імен, тобто копію суми "B"
A B C
Name1 123 rdt
Name1 256 efh
Name1 456 ikj
=sum(above number of Name1s)
Name2 123 rfa
=sum(above number of Name2s)
Name3 654 xxd
Name3 846 olp
=sum(above number of Name3s)
Name6 841 yuf
У мене є така проблема до цього питання AWK: Вставте рядок після кожної групи даних AWK: Вставте рядок після кожної групи даних але з Excel.
Крім того, чи можна це зробити в Python за допомогою openpyxl, якщо так, як? Будь ласка!
Дякую
Відповіді:
0 для відповіді № 1швидкий і брудний
Option Explicit
Sub main()
Dim i As Long
Dim sum As Double
With Range("A1").CurrentRegion
i = 1
Do
If .Cells(i + 1, 1) = .Cells(i, 1) Then
sum = sum + .Cells(i, 2)
i = i + 1
Else
sum = sum + .Cells(i, 2)
i = i + 1
.Rows(i).Insert xlDown
.Cells(i, 2).Value = sum
i = i + 1
sum = 0
End If
Loop While i <= .Rows.Count
End With
End Sub