-
Есть одна программа_1. Она умеет экспортировать данные в excel, пусть это будет файл_1.xls. Формат файла изменять возможности нет. Т.е. это некий фиксированный набор колонок с фиксированными названиями.
Есть другая программа_2, которая умеет импортировать данные из excel файла жёсткого формата (шаблона), пусть это будет файл_2.xls
Требуется файл_1.xls сконвертировать в файл_2.xls
Подскажите, какими технологиями это можно сделать минимумом затрат? или готовые программы может есть.
Я умею только программку накидать чтобы через COM-объект подключиться к каждому файлу, скопировав ячейки как нужно.
Ну или на VBA, правда не понятно в какой его файл встроить в этой схеме (наверное в файл-приёмник, т.е. в файл_2.xls, потому как файл_1 пишется всегда с нуля).
Но может есть вариант проще, без самописных программ?
Может вообще сам Excel умеет как-то так переносить данные?
Считаем, что менять местами столбцы в файл_1 и файл_2 возможности нет.
-
вариантов примерно миллиард.
и это только на самом екселе без ничего другого
-
Есть другая программа_2, которая умеет ....
плохо что она не умеет самого главного.
сама понимать в какой колонке какие данные засунуты.
-
> rrrrrrr © (15.08.17 12:25) [1]
> вариантов примерно миллиард.
> и это только на самом екселе без ничего другого
Быть может вас не затруднит назвать штуки четыре-пять методов?
-
ну к примеру ячейки одной книги могут содержать ссылки на ячейки другой книги.
или к примеру вба второй книги может вынуть в себя данные первой (миллионом способов)
или вынуть наружу
или еще например книга эксель умеет быть базой данных через оледб.
но в данном случае все это костыли.
когда меня лично запарил зоопарк входящих экселей,
то я нарисовал интеллектуальный импорт, которому все равно как там колонки расположены, сколько строк преамбулы до табличных данных и так далее.
к тому же это применимо не только к экселю, а ко всему что имеет регулярную структуру (текст, дбф, xml и т.д.)
но десять лет назад пришлось потратить целый день. или два.
-
> ну к примеру ячейки одной книги могут содержать ссылки на
> ячейки другой книги.
Со ссылками не понятно. Вариант хорош вроде, но я не знаю сумеет ли в таком варианте программа_2 заимпортировать в себя именно данные, а не формулы.
> или к примеру вба второй книги может вынуть в себя данные
> первой (миллионом способов)
> или вынуть наружу
> или еще например книга эксель умеет быть базой данных через оледб.
Ну т.е. VBA, верно?
-
ну да, вба.
в первом случае будут импортированы данные
-
> > или еще например книга эксель умеет быть базой данных
> через оледб.
>
> Ну т.е. VBA, верно?
да любое знакомое-привычное, могущее оледб юзать.
но я бы поставленную задачу реализовал бы скриптом vba в первой книге, и попробовал бы его заставить на любые внешние запросы как к книге_2 отдавать в виде книги_2.
в этом случае не потребуется программы_3
-
> rrrrrrr © (15.08.17 12:50) [6]
> в первом случае будут импортированы данные
А можно тогда поподробнее как вписать такие ссылки?
Это был бы хороший вариант: фактически сформировать шаблон, у которой например 10 строк заполнено ссылками на другой файл_1, перезаписываем файл_1 - фактически меняем данные в файл_2 (который со ссылками)
Это ведь так будет работать, верно?
Надо попробовать. Правда есть у меня какое-то сомнение, признаться: файл_2 засасывается через web-сайт, неужели данные в него волшебно уедут??
-
для начала скрипт на вбС, который сделает из первой вторую книгу.
затем AI импорт
-
файл_2 засасывается через web-сайт
пусть на сайт заливается книга1, а в ответ сливается книга 2
-
Это был бы хороший вариант
на самом деле не очень вариант.
вторая книга при открытии будет рассказывать что вот сейчас она будет обновлять связи на внешние источники
-
> rrrrrrr © (15.08.17 13:01) [11]
> Это был бы хороший вариант
> на самом деле не очень вариант.
> вторая книга при открытии будет рассказывать что вот сейчас
> она будет обновлять связи на внешние источники
Ну т.е. не заработает верно?
> rrrrrrr © (15.08.17 12:59) [10]
> файл_2 засасывается через web-сайт
>
> пусть на сайт заливается книга1, а в ответ сливается книга 2
Я, вероятно, неточно выразился.
Прога_2 (которая импортирует данные) - это и есть сторонний вебсайт.
-
а если формат файла из последних, на хмл, то можно вообще на всё наплевать и конвертить как угодно
-
что-то я запутался.
можно схему на пальцах?
пока я понял, что есть локальный эксель1 и кто-то где-то хочет иметь эксель2
-
> KilkennyCat © (15.08.17 13:06) [13]
> а если формат файла из последних, на хмл, то можно вообще
> на всё наплевать и конвертить как угодно
Кстати да, тоже вариант.
Правда вопрос тот же: каким софтом сделать конверсию? оно ж еще и зипованное
-
> rrrrrrr © (15.08.17 13:09) [14]
> что-то я запутался.
> можно схему на пальцах?
Есть прога_1. Сторонняя.
Она умеет экспортировать в жёсткий формат файл_1.xls
Есть вебсайт_2. Сторонний.
Она умеет импортировать жёсткий формат файл_2.xls
Вопрос: как преобразовать файл_1.xls в файл_2.xls с минимальными затратами, в идеале желательно без привлечения программирования, ну либо на чем-то попроще в плане времязтрат (в VBA мне разбираться надо будет, но решаемо, конечно)
-
.vbs скрипт
открываем книгу 1
вынимаем данные.
делаем книгу 2
делаем пост книги2 на сторонний сайт
по мне писать vbs в FAR'е удобнее, чем колупать vba макросы в книге.
-
давай книжку первую.
напишу.
все равно пока заняться нечем
-
> rrrrrrr © (15.08.17 13:32) [18]
> давай книжку первую.
> напишу.
у вас e-mail верный указан на форуме?
Если нет - напишите мне по e-mail, пожалуйста