Страницы: 1
RSS
Слияние значений из ячеек по условию
 
Приветствую, друзья!

Задачка: слияние элементов из столбца в строку.
"До и После - в аттаче

Предполагаю, привязаться к одному из условий: границы массива ( <img> ) или общая папка, с уникальным значением для каждого массива ( 135, 136 ... )
Кол-во элементов в массиве - не константа

В экселе - не часто. Формулы - понимаю.
Гугление по фразам "сцепить в границе", "слияние по условию" похожих примеров решения задачки не нашлось.

Подскажите, каким методом реализовать?
Спасибо!
 
В Excel 2019 и выше есть ОБЪЕДЕНИТЬ()
=ОБЪЕДИНИТЬ(;ИСТИНА;B2:B6)
Изменено: New - 08.04.2021 17:04:22
 
ruindex, вариант макросом
Код
Sub mrshkei()
Dim arr, arr2, i As Long, k As Long, lr As Long
lr = Cells(Rows.Count, 2).End(xlUp).Row' определяем последнюю заполненную строку во втором столбце
arr = Range("A2:B" & lr) 'создаем массив с А2:В и последней заполненной ячейке (выше определили)
ReDim arr2(1 To lr, 1 To 2): k = 1 ' создаем пустой массив для занесения нужных нам данных
For i = LBound(arr) To UBound(arr) ' цикл по массиву
    If Left(arr(i, 2), 1) = "<" Then 'проверяем что бы 1 символ был < если это так то то начинаем записывать данные в переменную 
        arr2(k, 1) = arr(i, 1)
        tt = arr(i, 2)
    ElseIf Right(arr(i, 2), 1) = ">" Then 'если пред условие не выполняется проверяем что последний символ < если это так записываем переменную в массив и обнуляем ее для объеденения следующих ячеек
        tt = tt & arr(i, 2): arr2(k, 2) = tt: tt = "": k = k + 1
    Else
        tt = tt & arr(i, 2) 'если 2 пред условия не выполняются значит продолжаемм добавлять текст в переменную
    End If
Next i
Range("D1").Resize(UBound(arr2), 2) = arr2 'вы гружаем массв поулченых данных
End Sub
Изменено: Mershik - 08.04.2021 20:10:41
Не бойтесь совершенства. Вам его не достичь.
 
ruindex, если нет О2019 но есть PQ.
Excel непознаваем как атом.
 
человек посмотрел посмотрел и ушел  
Не бойтесь совершенства. Вам его не достичь.
 
Благодарю Mershik за участие. Часто нахожу в Ваших постах в иных ветках ответы на свои вопросы.

Спасибо, New за отклик. По Вашей формуле вместо результата, пока что - #ИМЯ? Но пробую разобраться.

mtts54, Power Query у меня доселе не было, но заинтересовало и уже смотрю "Урок 1.  Знакомство с Power Query в Excel" )
Страницы: 1
Наверх