Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Пожалуйста, помогите новичку / 6 сообщений из 6, страница 1 из 1
19.04.2006, 19:24
    #33677617
Enerji
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
Есть шаблон в Excel. необходимо чтобы в результате генерации отчета заполнялись 3 ячейки.
как это сделать
пожалуйста, очень надо.
Заранее спасибо
...
Рейтинг: 0 / 0
20.04.2006, 07:33
    #33678022
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
Примерно так:
1. Создаем ссылку на EXCEL (с проверкой, EXCEL может не быть на компьютере):
Код: plaintext
1.
2.
3.
m.loExcel = GETOBJECT("", "Excel.Application")
IF VARTYPE(m.loExcel) <> "O" OR ISNULL(m.loExcel)
     RETURN .F. 
ENDIF
Вместо IF ... я заключаю весь код общения с EXCEL в TRY... CATCH...ENDTRY, но можно и так.
2. Открываем шаблон (m.lcFileIn), сохраняем его в новый файл (m.lcFileOut) и отключаем все предупреждающие тесты EXCEL:
Код: plaintext
1.
2.
m.loExcel.WorkBooks.Open(m.lcFileIn)
m.loExcel.ActiveWorkbook.SaveAs(m.lcFileOut)
m.loExcel.DisplayAlerts = .F.
3. Заполняем шаблон данными (из курсора temp, например):
Код: plaintext
1.
2.
3.
m.loExcel.Cells( 3 , 13 ).Value = DTOC(temp.DOtgr)
m.loExcel.Cells( 3 , 15 ).Value = ALLTRM(temp.FIO)
...
4. Сохраняем файл EXCEL и закрываем его:
Код: plaintext
1.
2.
m.loExcel.Save
m.loExcel.Quit
DOEVENTS
5. Удаляем ссылку на EXCEL
Код: plaintext
m.loExcel = .NULL.
6.ВСЕ.
С уважением, Алексей
...
Рейтинг: 0 / 0
20.04.2006, 09:03
    #33678118
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
Если это ДЕЙСТВИТЕЛЬНО ШАБЛОН, то эти строки:

Код: plaintext
1.
2.
m.loExcel.WorkBooks.Open(m.lcFileIn)
m.loExcel.ActiveWorkbook.SaveAs(m.lcFileOut)
m.loExcel.DisplayAlerts = .F.

можно заменить на:

Код: plaintext
m.loExcel.WorkBooks.Add(m.lcFileIn)
...
Рейтинг: 0 / 0
20.04.2006, 17:36
    #33680184
Enerji
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
спасибо
...
Рейтинг: 0 / 0
21.04.2006, 08:43
    #33681142
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
AleksMedЕсли это ДЕЙСТВИТЕЛЬНО ШАБЛОН, то эти строки:

Код: plaintext
1.
2.
m.loExcel.WorkBooks.Open(m.lcFileIn)
m.loExcel.ActiveWorkbook.SaveAs(m.lcFileOut)
m.loExcel.DisplayAlerts = .F.

можно заменить на:

Код: plaintext
m.loExcel.WorkBooks.Add(m.lcFileIn)


Понял... вы имеете в виду ШАБЛОНЫ самого EXCEL, а я иcпользую Read-Only файл XLS, как "шаблон".
А как программно в EXCEL подключить его шаблон?
С уважением, Алексей
...
Рейтинг: 0 / 0
21.04.2006, 08:57
    #33681162
AleksMed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пожалуйста, помогите новичку
Aleksey-K AleksMedЕсли это ДЕЙСТВИТЕЛЬНО ШАБЛОН, то эти строки:

Код: plaintext
1.
2.
m.loExcel.WorkBooks.Open(m.lcFileIn)
m.loExcel.ActiveWorkbook.SaveAs(m.lcFileOut)
m.loExcel.DisplayAlerts = .F.

можно заменить на:

Код: plaintext
m.loExcel.WorkBooks.Add(m.lcFileIn)


Понял... вы имеете в виду ШАБЛОНЫ самого EXCEL, а я иcпользую Read-Only файл XLS, как "шаблон".
А как программно в EXCEL подключить его шаблон?
С уважением, Алексей

Вот так и подключается:
Код: plaintext
m.loExcel.WorkBooks.Add(<NemplateFileName>)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Пожалуйста, помогите новичку / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]