(VBA) Помогите разобрать таблицу в Excel

Тема в разделе "Другие языки", создана пользователем zhitya, 31 янв 2013.

Модераторы: Цукер
  1. zhitya

    zhitya Создатель

    Регистр.:
    4 фев 2008
    Сообщения:
    15
    Симпатии:
    8
    Добрый!
    Есть простая задача, над которой я залип...

    Есть лист с содержимым:
    Clip_17.jpg

    Нужно получить второй лист, в котором тоже самое, только значения столбца С разобраны по разделителю "/". Вот так:
    Clip_18.jpg

    Мой код:
    Код:
    Sub do_unical_c()
        Dim i, j, c, t, nRows, subRows As Integer
        Dim str As String, arr() As String
     
        nRows = ActiveSheet.UsedRange.rows.Count
        t = 1
     
        For i = 1 To nRows
        arr = split(Worksheets("Sheet1").Cells(i, 3).Value, "/") 'Разбиваем на подстроки по символу "/"
        subRows = UBound(arr) 'Сколько в массиве элементов, минимум 0
        For c = 0 To subRows 'Перебор массива с разобранной строкой
            For j = 1 To 7 'Перебор столбцов
     
                t = i + c
     
                If j <> 3 Then
                    Worksheets("Sheet2").Cells(t, j).Value = Worksheets("Sheet1").Cells(i, j).Value
                Else 'Если тот самый столбец, то...
                    Worksheets("Sheet2").Cells(t, j).Value = arr(c)
                End If
         
            Next j
        Next c
      Next i
    End Sub
    
    Проблема заключается в том, что на втором листе значения разбиваются, но второе-третье из массива перезаписывается в одной строке, а мне нужны уникальные!

    Помогите пжлста!
     
  2. Ultharas

    Ultharas Создатель

    Регистр.:
    26 сен 2014
    Сообщения:
    27
    Симпатии:
    10
    Времени много прошло, задача еще актуально? сложности, вроде, нет. Могу заняться