Преобразование всех столбцов Excel к одному. - VB

Узнай цену своей работы

Формулировка задачи:

Есть Exel таблица вида: __A____B__ 1| qwe | 45 | 2| rwe | 23 | 3| qwe | 09 | 4| aaa | 32 | 5| aaa | 01 | ............. Книть знает как заставить Exel, все строки с одинаковым столбцом A, преобразовать в одну, складывая все значения B? Т.е. должна получиться таблица: qwe 54 rwe 23 aaa 33

Решение задачи: «Преобразование всех столбцов Excel к одному.»

textual
Листинг программы
Sub Recalk()
Dim OBJ1, OBJ2 As Object
Dim tt$, tmp$, tval%, id%, Off As Variant
    Set OBJ1 = ActiveCell
    Set OBJ2 = ActiveCell
    id% = 0
    While Not IsEmpty(OBJ1.Value)
        tmp$ = OBJ1.Value
        tt$ = OBJ1.Offset(0, 2).Value
        tval% = 0
        If tt$ <> 'Recalk' Then
            Off = OBJ2.CurrentRegion.Rows.Count - 1
            For i% = 0 To Off
                If OBJ2.Offset(i%, 0).Value = tmp$ Then
                    tval% = tval% + OBJ2.Offset(i%, 1).Value
                    OBJ2.Offset(i%, 2).Value = 'Recalk'
                End If
            Next i%
            OBJ2.Offset(id%, 3).Value = tmp$ & ' ' & CStr(tval%)
            id% = id% + 1
        End If
        Set OBJ1 = OBJ1.Offset(1, 0)
        OBJ1.Select
    Wend
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы