Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Как перенести параметр  [new]
ularsoft
Member

Откуда:
Сообщений: 312
Всем добрый день!

Экспортирую данные используя шаблон в Excel'е с несколькими PRG на Fox'е
+
xl=CREATEOBJECT('excel.application')
xl.WorkBooks.open(ALLTRIM(sysfile.s_pathfwp)+'CHARG.xlt')
xl.Visible= .T.

DO p252a_11 WITH m_date1,m_date2
DO p252a_22 WITH m_date1,m_date2
DO p252a_33 WITH m_date1,m_date2
DO p252a_44 WITH m_date1,m_date2
DO p252a_55 WITH m_date1,m_date2

ThisForm.Release

где, m_date1 - начальная дата, m_date2 - конечная дата

1) p252a_11.prg
+
LPARAMETERS m_date1,m_date2

xl.Workbooks(1).Sheets(1).Select
xl.WorkBooks(1).Sheets(1).Range('B6').Value='FROM '+DTOC(m_date1)+' TO '+DTOC(m_date2)
xl.WorkBooks(1).Sheets(1).Range('B6').Font.Bold=1
xl.WorkBooks(1).Sheets(1).Range('B9').Select
xl.ActiveWindow.FreezePanes = 1
xl.Workbooks(1).Sheets(1).Range('B'+ALLTRIM(STR(i,3))).Select
xl.Selection.Value=''
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i,3))).Select
xl.Selection.Value=''


2) p252a_22.prg
+
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+1,3))).Select
xl.Selection.Value='*** Other 1 ***'
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+1,3))).Font.Bold=1
xl.Workbooks(1).Sheets(1).Range('A'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('B'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('D'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('E'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('F'+ALLTRIM(STR(i+1,3))).Interior.ColorIndex = 35


3) p252a_33.prg
+
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+2,3))).Select
xl.Selection.Value='*** Other 2 ***'
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+2,3))).Font.Bold=1
xl.Workbooks(1).Sheets(1).Range('A'+ALLTRIM(STR(i+3,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('B'+ALLTRIM(STR(i+2,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i+2,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('D'+ALLTRIM(STR(i+2,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('E'+ALLTRIM(STR(i+2,3))).Interior.ColorIndex = 35
xl.Workbooks(1).Sheets(1).Range('F'+ALLTRIM(STR(i+2,3))).Interior.ColorIndex = 35


Как передать i на p252a_22.prg, p252a_33.prg и т.д. чтобы получить следующую строку в Excel'е?
23 апр 19, 10:31    [21869551]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
PaulWist
Member

Откуда:
Сообщений: 2187
Private i

xl=CREATEOBJECT('excel.application')
xl.WorkBooks.open(ALLTRIM(sysfile.s_pathfwp)+'CHARG.xlt')
xl.Visible= .T.
23 апр 19, 11:47    [21869654]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
ularsoft
Member

Откуда:
Сообщений: 312
PaulWist
Private i

xl=CREATEOBJECT('excel.application')
xl.WorkBooks.open(ALLTRIM(sysfile.s_pathfwp)+'CHARG.xlt')
xl.Visible= .T.

Variable 'I' is not found.
23 апр 19, 11:55    [21869668]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
asdor
Member

Откуда: Москва
Сообщений: 455
ularsoft
Variable 'I' is not found.

Конечно.
А где вы ей значение присваиваете?
23 апр 19, 16:02    [21869921]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
ularsoft
Member

Откуда:
Сообщений: 312
в p252a_11.prg

+
LPARAMETERS m_date1,m_date2

xl.Workbooks(1).Sheets(1).Select
xl.WorkBooks(1).Sheets(1).Range('B6').Value='FROM '+DTOC(m_date1)+' TO '+DTOC(m_date2)
xl.WorkBooks(1).Sheets(1).Range('B6').Font.Bold=1
i=10
xl.Workbooks(1).Sheets(1).Range('B'+ALLTRIM(STR(i,3))).Select
xl.Selection.Value=''
xl.Workbooks(1).Sheets(1).Range('C'+ALLTRIM(STR(i,3))).Select
xl.Selection.Value=''
23 апр 19, 17:03    [21869989]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
ularsoft
Member

Откуда:
Сообщений: 312
Огромное Вам спасибо ребята! Все получилось...
23 апр 19, 19:05    [21870075]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести параметр  [new]
Sergey Sizov
Member

Откуда:
Сообщений: 1448
ularsoft,

Lparameters m_date1,m_date2

With xl.WorkBooks(1).Sheets(1)
  .Range('B6').Value='FROM '+Dtoc(m_date1)+' TO '+Dtoc(m_date2)
  .Range('B6').Font.Bold=1
  i=10
  .Range(.cells(i, 2).Value = ''
  .Range(.cells(i, 3).Value = ''
Endwith

Ни на какие мысли не наводит?
24 апр 19, 08:58    [21870300]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить