У меня есть несколько отчетов, которые я запускаю для своей базы данных, которые в конечном итоге должны быть переданы конечным пользователям в виде электронных таблиц Excel.
Первоначально я создавал текстовые отчеты, но шаги по преобразованию текста в электронную таблицу были немного громоздкими. Было слишком много шагов для импорта текста в электронную таблицу, и многострочные текстовые строки были импортированы как отдельные строки в Excel (что было неверно).
В настоящее время я создаю простой XML-файл, сохраняя файл с расширением «.xls». Это работает лучше, но по-прежнему существует проблема, связанная с тем, что Excel запрашивает у пользователя диалоговое окно импорта XML каждый раз, когда они открывают файл, а затем приходится сохранять новый файл, если они добавляют примечания или изменяют макет на файл (который они почти наверняка будут делать).
Пример файла "xls":
<?xml version="1.0" standalone="yes"?>
<report_rows>
<row>
<NAME>Test Data</NAME>
<COUNT>345</COUNT>
</row>
<!-- many more row elements... -->
</report_rows>
Есть ли способ добавить разметку в файл, чтобы подсказать Excel, как он должен импортировать и обрабатывать файл? В идеале конечный пользователь должен иметь возможность открывать и сохранять файл, как и любую другую электронную таблицу, которую он создает непосредственно из Excel.
Это вообще возможно?
UPDATE:
Мы запускаем Office 2003 здесь.
UPDATE:
XML генерируется из сценария sqlplus, здесь нет возможности использовать C # / .NET.