Профессиональные приемы работы в Microsoft Excel

Обмен опытом => Microsoft Excel => Тема начата: SS78RUS от 28.03.2017, 17:54

Название: Сложение строк по дубликатам в первом столбце
Отправлено: SS78RUS от 28.03.2017, 17:54
Здравствуйте!

Имеется более 10000 строк, 5 столбцов. Дублируется текст только в первом. В 4-х после него уникальный текст не пересекающийся по столбцам.
Подскажите как сложить в одну строку дубликаты из первого столбца?

Пример во вложении.
Заранее спасибо!
Название: Re: Сложение строк по дубликатам в первом столбце
Отправлено: kuklp1 от 29.03.2017, 07:54
Sub www()
    Dim i&, c As Range, r As Range
    Range("A2").CurrentRegion.Columns(1).Copy Range("J1")
    [$J$1].CurrentRegion.RemoveDuplicates 1
    For Each c In [$J$1].CurrentRegion.Columns(1).Cells
        For Each r In Range("A2:A8").Cells
            If r.Value = c.Value Then
                For i = 1 To 4
                    If r.Offset(, i) <> "" Then c.Offset(, i) = r.Offset(, i)
                Next
            End If
        Next
    Next
End Sub

Если у Вас 2003 Эксел, то так:
Sub www()
    Dim i&, c As Range, r As Range
    With [a2].CurrentRegion.Columns(1)
        .AdvancedFilter 1, Unique:=True
        .SpecialCells(12).Copy Range("J1")
        ActiveSheet.ShowAllData
    End With
    For Each c In [$J$1].CurrentRegion.Columns(1).Cells
        For Each r In Range("A2:A8").Cells
            If r.Value = c.Value Then
                For i = 1 To 4
                    If r.Offset(, i) <> "" Then c.Offset(, i) = r.Offset(, i)
                Next
            End If
        Next
    Next
End Sub

Название: Re: Сложение строк по дубликатам в первом столбце
Отправлено: zs5 от 30.03.2017, 08:24
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A3)>0;B3;"");"")&ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A4)>0;B4;"");"")&ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A5)>0;B5;"");"")&ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A6)>0;B6;"");"")&ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A7)>0;B7;"");"")&ЕСЛИОШИБКА(ЕСЛИ(ПОИСК($A17;A8)>0;B8;"");"")
Название: Re: Сложение строк по дубликатам в первом столбце
Отправлено: SS78RUS от 03.04.2017, 12:10
kuklp1, просто, красиво, эффективно.. Спасибо!