|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Выгрузка отчета в word и excel
Добрый день, подскажите пожалуйста. Есть некий алгоритм, от подставленных в него чисел он дает некий результат. Его надо записать в ворд и эксель на выбор, с сохранением фаила в определенную директорию с именем фаила ФИО клиента. Как это лучше сделать? Вот кусок кода, как нормально записать и красиво?
Эксель Код:
begin SaveDialog1.DefaultExt := '.rtf'; SaveDialog1.Filter := 'EXCEL files|*.xls'; if SaveDialog1.Execute then begin // RichEdit1.Lines.SaveToFile(SaveDialog1.FileName); //Excel.Visible := True; AssignFile(F,saveDialog1.FileName); Rewrite(F); Writeln(F, 'xyz'); Excel.Range['b2']:='Привет!'; CloseFile(F); ShowMessage('Файл '+SaveDialog1.FileName+' сохранён. '); end; end; как записать во вторую ячейку? как подвинуть все крассиво что бы можно было на листе а4 распечатать данные? Ворд Код:
begin SaveDialog1.DefaultExt := '.doc'; SaveDialog1.Filter := 'WORD files|*.doc'; if SaveDialog1.Execute then begin // RichEdit1.Lines.SaveToFile(SaveDialog1.FileName); AssignFile(F,saveDialog1.FileName); Rewrite(F); Writeln(F, 'xyz'); CloseFile(F); ShowMessage('Файл '+SaveDialog1.FileName+' сохранён. '); end; end; Посоветуйте лучший вариант Спасибо за помощь заранее. |
#2
|
||||
|
||||
В зависимости от расширения файла. В фильтр оба типа добавить.
Пишу программы за еду. __________________ |
#3
|
|||
|
|||
Ну, данные примеры будут выдавать бред и ошибки.
Если уж мы говорим о красивом выводе, то действовать надо примерно так (посностью код писать лень): 1. Открываем диалог сохранения для выбора пользователем файла. В диалоге в фильтре оба типа файла. 2. Если пользователь выбрал файл, то 3. получаем расширение выбранного файла (для определения куда экспортировать) 4. Копируем из папки программы ЗАРАНЕЕ отдизайненый шаблон (ворд или эксель по типу расширения) 5. Вызываем процедуру вывода данных в ворд или в эксель (по типу расширения). Пара слов о самом экспорте. Я бы делал через OLE, примеров в инете достаточно. В эксель можно просто по ячейкам добавлять. В ворд если данных мало, то можно заменой, если данных много, то расставляем закладки и соотв. впечатываем данные в соотв. места переходя по этим закладкам. Примеров, как я сказал, в инете предостаточно. |
#4
|
|||
|
|||
MSWord.ActiveDocument.SaveAs('C:\ex.doc');
Допустим с методом записи информации в фаил разберусь, подскажите как задать местоположение фаила куда сохранить? описанный выше вариант не подходит. |
#5
|
||||
|
||||
См. выше, уже расписали: "1. Открываем диалог сохранения для выбора пользователем файла"... Компонент SaveDialog на вкладке Dialogs.
Код:
if SaveDialog1.Execute then ..... |
#6
|
|||
|
|||
делаю вот так, не работает
Код:
begin // RichEdit1.Lines.SaveToFile(SaveDialog1.FileName); AssignFile(F,MSWord.ActiveDocument.SaveAs.FileName); Rewrite(F); //Writeln(F, 'xyz'); CloseFile(F); ShowMessage('Файл '+SaveDialog1.FileName+' сохранён. '); { // RichEdit1.Lines.SaveToFile(SaveDialog1.FileName); AssignFile(F,saveDialog1.FileName); Rewrite(F); //Writeln(F, 'xyz'); CloseFile(F); ShowMessage('Файл '+SaveDialog1.FileName+' сохранён. '); } end; Как правильно? я плохо разбираюсь в делфи если честно, не понимаю как правильно сохратить ворд, а так же эксель. |