[C#] Как программно сохранить данные в формате Word, Excel?
Если у пользователя офис от 2003 и выше, можешь поискать по ключевым словам WordML и ExcelML.
Если нет - добавляй в студии ссылку на COM-объекты экселя и ворда, взбатывай их объектную модель (проще всего путем записывания макросов в ворде\экселе и втыкания в полученный VB-код в редакторе макросов там же).
ЗЫ. Помни: офис, установленный на сервере,- это злоо!
Но до настоящего момента на это все забивают
Если нет - добавляй в студии ссылку на COM-объекты экселя и ворда, взбатывай их объектную модель (проще всего путем записывания макросов в ворде\экселе и втыкания в полученный VB-код в редакторе макросов там же).
ЗЫ. Помни: офис, установленный на сервере,- это злоо!
Но до настоящего момента на это все забивают

Двигаться в направлении гугла.
Спасибо за конструктивную помощь, ! Пойду ботать =)
если не ошибаюсь то эксель можно записывать в опреленном формате html только предварительно какие-то заголовки нужно прописать.
с вордом в зависимости от сложности документа, проблем с ртфом возникнуть не должно
сохранить то как раз не проблема самый пипец читать word и excel
с вордом в зависимости от сложности документа, проблем с ртфом возникнуть не должно
сохранить то как раз не проблема самый пипец читать word и excel
для VS2005 есть Tools for Office, вроде можно генерировать документы.
Ага, года два назад писал библиотечку - точнее, переписывал - до меня писалось в хтмл, но там проблема в том, что поддерживается только один лист екселя, я переписывал на xml - там тоже свои заморочки есть.. База какая? если MSSQL - точно есть провайдеры, чтобы выводить данные в файл екселя. Жопа в том, что файл должен заранее существовать и иметь определенную структуру (во-первых, именованные колонки - хотя не уверен, во-вторых, если не строки, надо делать доп-строчку с указанием формата, иначе ппц + строки длинее 255 символов не воспринимаюся).
Про ворд ничего не знаю..
Про ворд ничего не знаю..
База какая? если MSSQL - точно есть провайдеры, чтобы выводить данные в файл екселя.это как? через SSIS что ли? так там тоже свои заморочки
. И причем тут C#?Как программно сохранить данные в формате Word, Excel?
Вообще, если задача формулируется вот так просто "сохранить"
, то для Excel-я сохраняешь в CSV-файл, а для ворда в TXT-файл
. Если требуется сложный формат, то1. Если можно обойтись не полным контролем, то HTML, WordML (и для excel-я что-то там RTF.
2. Если требуется полный контроль, то объектная модель. Но при больших объемах данных этот вариант может работать неприемлемо долго. Проблемы диплоимента тоже надо учитывать.
Кстати, дело говоришь!
Я глянул, что генерит 2007 Эксель - около пяти файлов получается.
Разобраться реально.
Хотя ХЗ, насколько старые версии Экселя понимают этот формат и насколько новые версии понимают старые форматы.
Я глянул, что генерит 2007 Эксель - около пяти файлов получается.
Разобраться реально.
Хотя ХЗ, насколько старые версии Экселя понимают этот формат и насколько новые версии понимают старые форматы.
если что-то посложнее требуется, то можно попробовать ReportViewer, там есть функции экспорта, тем более, что пишешь на .NETе.
кстати, кто нибудь может провести мастер-класс по отчетам в Visual Studio 2005 ?
только, к сожалению, с Office 12 не работает
кстати, кто нибудь может провести мастер-класс по отчетам в Visual Studio 2005 ?
для VS2005 есть Tools for Office, вроде можно генерировать документы.
только, к сожалению, с Office 12 не работает

посмотри тут, помоему очень доступно описано всё
http://ishodniki.ru/art/artshow.php?cat=1&id=474&sho...
http://ishodniki.ru/art/artshow.php?cat=1&id=473&sho...
http://ishodniki.ru/art/artshow.php?cat=1&id=474&sho...
http://ishodniki.ru/art/artshow.php?cat=1&id=473&sho...
Для чего SSIS? - гемора с ним много
Например, так
set @sql = N'insert into OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', ''Excel 8.0;Database='+@filename+';HDR=YES'', ''SELECT ...'
Но да, можно и через него или DTS в 2k
При чем здесь C#? - При том, что один из способов сделать доку - данные-то все равно из бд тянутся
Например, так
set @sql = N'insert into OPENROWSET(''Microsoft.Jet.OLEDB.4.0'', ''Excel 8.0;Database='+@filename+';HDR=YES'', ''SELECT ...'
Но да, можно и через него или DTS в 2k
При чем здесь C#? - При том, что один из способов сделать доку - данные-то все равно из бд тянутся
Ага, совсем про них забыл - могу подсказать - мы просто пдф в них генерим, а не ексель
, но это замена одного параметра
, но это замена одного параметрау тебя есть 2 принципиальных направления для решения твоей задачи:
1. Юзать Word, Excel в качестве OLE-сервера.
2. Юзать библиотеки (классы, компоненты которые "понимают" формат doc, xls
Какой вариант для тебя предпочтительнее?
1. Юзать Word, Excel в качестве OLE-сервера.
2. Юзать библиотеки (классы, компоненты которые "понимают" формат doc, xls
Какой вариант для тебя предпочтительнее?
Если база MS SQL, то можно попробовать использовать Reporting Services, там нормальный программный интерфейс через веб сервис. Правда там из форматов есть Ексел, но не Ворд.
Помни: офис, установленный на сервере,- это злоо!Почему?
жесть! записал в блокнотик
а что, новомодные xml-форматы уже осилил кто-нибудь и умеет использовать для полезных дел (где не подходят rtf, html, csv и прочие суррогаты или это только теория?
а что, новомодные xml-форматы уже осилил кто-нибудь и умеет использовать для полезных дел (где не подходят rtf, html, csv и прочие суррогаты или это только теория?
Лично мне не приходилось пока, обходился старыми форматами. Знаю что поддержка XML формата файлов MS Project есть в библиотеке MPXJ , других библиотек/тулов с поддержкой XML форматов документов Офиса не знаю.
> а что, новомодные xml-форматы уже осилил кто-нибудь и умеет использовать для полезных дел (где не подходят rtf, html, csv и прочие суррогаты или это только теория?
все современные report generator-ы, как раз обычно, xml-ные форматы и генерят.
и соответственно, word/excel-ю нет альтернатив в двух применениях:
1. импорт шаблонов документов
2. экспорт данных для последующей обработки пользователем
все современные report generator-ы, как раз обычно, xml-ные форматы и генерят.
и соответственно, word/excel-ю нет альтернатив в двух применениях:
1. импорт шаблонов документов
2. экспорт данных для последующей обработки пользователем
Оставить комментарий
bobische
Программа на C# работает с БД - выдает данные по запросу. Необходимо сделать сохранение этих данных в Word, Excel.Скажите, в каком направлении двигаться?
Заранее спасибо!