powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Загрузка каталога древовидной структуры в Excel
10 сообщений из 10, страница 1 из 1
Загрузка каталога древовидной структуры в Excel
    #34696169
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Необходимо произвести загрузку данных из текстового файла вида:
Каталог1 Каталог2 Элемент1
Каталог1 Элемент2
Каталог1 Каталог3 Элемент3
...
в файл Excel вида:
Каталог1
Каталог2
Элемент
Каталог3
Элемент3
Элемент2
...

Подскажите как проще реализовать?
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34697205
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
с помощью функции Split
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Sub OpenTXT()
    Dim txtFL As String:    txtFL = ThisWorkbook.Path & "\files.txt"
    Dim freeF As Integer:   freeF = FreeFile
      
    Dim zapis As String
    Dim masiv, i, k
      
    Dim rng
    Set rng = ThisWorkbook.Worksheets("Лист1")
    
    Open txtFL For Input As #freeF
    Do Until EOF(freeF)
        Line Input #freeF, zapis
        masiv = Split(zapis, " ", , vbTextCompare)
        i = i +  1 
        For k =  0  To UBound(masiv)
            rng.Cells(i + k,  1 ) = masiv(k)
        Next
        i = k
    Loop
    Close #frreF
        
    Set rng = Nothing
End Sub
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34697277
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
Проблема правда состоит ещё в том, что необходимо построить дерево по заданным строкам:
то есть нужно не только перенести строки в Excel, но и выстроить их в виде дерева с свёрткой по дублирующимся элементам.

То есть
Каталог1 Каталог2 Элемент1
Каталог1 Элемент2
Каталог1 Каталог3 Элемент3
в итоге должно выглядеть как:

Каталог1
----------Каталог2
--------------------Элемент1
----------Каталог3
--------------------Элемент3
----------Элемент2
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34697731
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rodas но и выстроить их в виде дерева с свёрткой по дублирующимся элементам.

Данные - Группа и структура
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34697746
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
понадобится ещё одна переменная j
Код: plaintext
     Dim masiv, i, k, j
и заменить цикл For
Код: plaintext
1.
2.
3.
4.
        For k =  0  To UBound(masiv)
            For j =  0  To k
                rng.Cells(i + k, j +  1 ) = masiv(j)
            Next
        Next
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34698615
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дерево выстраивается, но свёртки не получается
Например если есть дерево:
Каталог1
----------Каталог2
--------------------Элемент1
----------Каталог3
--------------------Элемент3
----------Элемент2

и считывается строка Каталог1 Каталог3 Элемент8, то дерево должно видоизменяться следующим образом:
Каталог1
----------Каталог2
--------------------Элемент1
----------Каталог3
--------------------Элемент3
--------------------Элемент8
----------Элемент2
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34698747
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
big-duke rodas но и выстроить их в виде дерева с свёрткой по дублирующимся элементам.

Данные - Группа и структура
К сожалению этим способом автоматически дерево не свернуть...
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34698845
Фотография klen_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rodasК сожалению этим способом автоматически дерево не свернуть...думаю это надо сделать после оператора i=k
Код: plaintext
1.
2.
        Next
        i = k
        rng.Rows.Group ???
, но как ? мне самому интересно
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34698947
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
мне тоже интересно :)
может есть смысл в Excel подгрузить строки аналогично тексту в виде:

Каталог1 Каталог2 Элемент1
Каталог1 Элемент2
Каталог1 Каталог3 Элемент3
...

а затем уже сортировкой привести к нужному виду сортируя столбцы по-порядку:
сначала первый, потом второй и т.д.?
...
Рейтинг: 0 / 0
Загрузка каталога древовидной структуры в Excel
    #34703116
rodas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо!
Реализовал задачу посредством встроенного языка 1с 8, кому интересно - обращайтесь.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Загрузка каталога древовидной структуры в Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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