Сцепить диапазон по столбцам - VBA

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

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

Добрый день! Подскажите, пожалуйста, как сцепить диапазон ячеек по столбцам (вертикально). В интернете нашла отличный вариант через vba, но в нем только построчно. Excel 2013 Спасибо огромное!

Решение задачи: «Сцепить диапазон по столбцам»

textual
Листинг программы
Public Function СцепитьДиапазон2(ByVal Диапазон As Range, _
    Optional ByVal РазделительСтрок As String = ", ", _
    Optional ByVal РазделительСтолбцов As String = "; ")
    Dim c As Range, v As Variant, t As String, s As String, lr As Long, lc As Long
    lr = Len(РазделительСтрок) + 1: lc = Len(РазделительСтолбцов) + 1
    If Диапазон.Rows.Count = 1 Then
        For Each v In Диапазон
            If v <> "" Then s = s & РазделительСтолбцов & v
        Next
    Else
        For Each c In Диапазон.Columns
            t = ""
            For Each v In c.Value
                If v <> "" Then t = t & РазделительСтрок & v
            Next
            If t <> "" Then s = s & РазделительСтолбцов & Mid(t, lr)
        Next
    End If
    СцепитьДиапазон2 = Mid(s, lc)
End Function

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


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

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

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