Новости:

Прикрепить к сообщению можно только файлы xls, gif, jpg, rar, zip,7z, bas, frm, cls, doc размером до 150 Кб.

Главное меню

Нужно хитро объединить ячейки

Автор feodosij, 18.05.2011, 23:42

« назад - далее »

feodosij

Есть такая таблица

Нужно объединить ячейки таким образом

Подскажите, пожалуйста, какими методами можно это осуществить?

nilem

Например, выделяем диапазон (на картинке C5:D15), запускаем это:
Sub HitrOb()
Dim x, y(), i&, j&, n&, k$
If Selection.Columns.Count <> 2 Then Exit Sub
x = Selection.Value: ReDim y(1 To UBound(x), 1 To 2)
With New Collection
    On Error Resume Next
    For i = 1 To UBound(x)
        k = CStr(x(i, 2))
        If IsEmpty(.Item(k)) Then
            j = j + 1: .Add j, k
            y(j, 1) = "(" & x(i, 1) & ")"
            y(j, 2) = x(i, 2)
        Else
            n = .Item(k)
            y(n, 1) = Replace(y(n, 1), ")", ", " & x(i, 1) & ")")
        End If
    Next
End With
Selection.Offset(, 3).Value = y
End Sub

Результат запишется справа, через столбец.

feodosij

выражаю огромную благодарность. Надо по-тихоньку изучать макросы...

Alex_ST

Цитата: feodosij от 19.05.2011, 08:54Надо по-тихоньку изучать макросы...
Ну, почему же потихоньку? 
В изучении макросов нет ничего такого, что противоречило общественной морали и чего, поэтому, следовало бы стыдиться и делать это тайком когда очень уж хочется...     
С уважением, Алексей