Страницы: 1
RSS
[ Закрыто ] Заполнение txt либо json файла из Excel макросом, Заполнение txt файла из Excel макросом
 
Подскажите, пожалуйста, как макросом создать и заполнить файл txt на основе данных, которые содержатся в файле "Книга2.xlsm"?

В прикрепленном архиве:
1. Книга2.xlsm - файл с данными
2. Пример.txt - то что должно получиться в результате работы макроса. Файл может быть и в другом формате, например, json.
3. Описание порядка.docx - описание порядка заполнения файла Пример.txt на конкретном примере.

Небольшая попытка предпринята в файле Книга2.xlsm.
Возможно, есть какие-то аналогичные.  
Изменено: YanaK - 28.03.2020 20:14:53
 
вам в результате нужно получить json c ошибками в синтаксисе (так же как и в приложенном примере)?
 
Да, нужно получить то, что в файле Пример.txt. По сути это json. Ошибки исправила, спасибо. Конечно же, их не должно быть. Приложила файл Пример.txt заново.
Не получается вывести макросом такое большое количество кавычек, двоеточий, слэшей и т.п., чтобы это все было сцеплено с данными в ячейках Книги2.xlsm.
Попытка написать макрос для вывода в txt предпринята в файле Книга2.xlsm. Возможно, есть какой-то макрос - аналог функции СЦЕПИТЬ, который будет работать корректно в цикле.
Код
   "types": [ // Типы данных для связи по id
            {
            "name": "client_relation", //Тип поля, по которому будет зависимость
Изменено: YanaK - 14.04.2020 14:48:38
 
Цитата
YanaK написал:
Ошибки исправила
неа, в новом файле исправлены 2 ошибки из 4x, которые были в 1-м

в общем, тут можно скачать библиотеку для генерации и парсинга Json,  тут пример ее использования
теоретически, есть возможность собирать json c помощью xslt 2.0, но для преобразования будет необходима java машина или xslt процессор, например бесплатный altovaxml 2013
 
Большое спасибо!

Я еще такой похожий пример нашла:
https://stackoverflow.com/questions/51306698/vba-json-converter-not-converting-more-than-15-digits
Но не совсем понятно как это корректно сделать в 2 циклах и как добавить комментарии в json. А именно, вот эти условия: "пока в столбце G есть непустые значения" и "если в столбце A наименование таблицы одно и то же":

1. Программа пробегает по столбцу G (начиная со второй строки) и если в нем значение не пустое, формирует блок json с описанием типа данных "relation", используя для этого данные из текущей строки. Когда заканчиваются непустые значения в столбце G, ставится завершающая кавычка.
2. Программа пробегает далее по столбцу A (начиная со второй строки) и формирует блоки json с описанием таблиц и их полей, используя данные из текущей строки. Столбец A отсортирован по возрастанию. Пока наименования таблиц в нем совпадают, считается, что речь идет об одной и той же таблице. Каждая строка описывает одно новое поле таблицы. Когда в столбце A обнаруживается новое значение, считается, что началось описание следующей таблицы и ее полей. Формируется блок json с описанием следующей таблицы и ее полей. И так далее, пока в столбце A не будут исчерпаны все непустые значения.

Более подробно описано в файле "Описание заполн файла.docx".
 
При конвертации в json наименования на русском языке конвертируются некорректно.
Если есть возможность, подскажите, пожалуйста, как это исправить.
Файл приложен.
Изменено: YanaK - 14.04.2020 13:53:46
 
Код ваш?
"Все гениальное просто, а все простое гениально!!!"
 
YanaK, новый вопрос для новой темы
Страницы: 1
Наверх