powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Объединение данных в списке Excel
5 сообщений из 5, страница 1 из 1
Объединение данных в списке Excel
    #37951862
Здравствуйте, любители Excel.

Подскажите, как решить такую задачу, когда по каждому коду нужно объединить данные из соседнего столбца. Как сделать, если только 2 значения - легко представляю, а когда больше - ставит в тупик.
Можно ли сделать формулами или прямая дорога к VBA?

ИСТОЧНИК РЕЗУЛЬТАТ
Код Значение Код Значение
АА1 Первый АА1 Первый;Второй;Третий
АА1 Второй ББ2 One;Two
АА1 Третий ВВ1 Уникум
ББ2 One ГГ6 Один;Два;Три;Четыре
ББ2 Two
ВВ1 Уникум
ГГ6 Один
ГГ6 Два
ГГ6 Три
ГГ6 Четыре

благодарю за внимание!
...
Рейтинг: 0 / 0
Объединение данных в списке Excel
    #37951866
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ультр@фиолет , пример давайте
...
Рейтинг: 0 / 0
Объединение данных в списке Excel
    #37951869
Пример с первой попытки не прикрепился :(
...
Рейтинг: 0 / 0
Объединение данных в списке Excel
    #37951873
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Объединение данных в списке Excel
    #37951881
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Serge 007, не, тут VLOOKUPCOUPLE нужно, или СЦЕПИТЕСЛИ()
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
Function VLOOKUPCOUPLE6(Table As Variant, SearchColumnNum As Integer, SearchValue As Variant, _
                        RezultColumnNum As Integer, Separator_ As String, Optional BezPovtorov As Boolean = True)
'Table - таблица, где ищем
'SearchColumnNum - столбец, где ищем
'SearchValue - данные, которые ищем
'RezultColumnNum - колонка, откуда берём результат
'Separator_ - разделитель, желательно вводить с пробелом в конце
'BezPovtorov - если поставить 0, то будут выведены все повторяющиеся совпадения

    Dim i As Long, oDict As Object, tmp As String, vlk
        
    If TypeName(Table) = "Range" Then Table = Table.Value

    If BezPovtorov Then
        Set oDict = CreateObject("Scripting.Dictionary")

        For i = 1 To UBound(Table)
            If Table(i, SearchColumnNum) = SearchValue Then
                tmp = Table(i, RezultColumnNum)
                If tmp <> "" Then
                    If Not oDict.Exists(tmp) Then
                        oDict.Add tmp, 0&
                        vlk = vlk & Separator_ & Table(i, RezultColumnNum)
                    End If
                End If
            End If
        Next i

    Else
        For i = 1 To UBound(Table)
            If Table(i, SearchColumnNum) = SearchValue Then
                vlk = vlk & Separator_ & Table(i, RezultColumnNum)
            End If
        Next i
    End If
    If vlk > 0 Then vlk = Mid(vlk, Len(Separator_) + 1) Else vlk = ""
    VLOOKUPCOUPLE6 = vlk
End Function
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Объединение данных в списке Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]