Вывожу данные в excel.
Все в порядке, зря раньше не пользовался.
Вроде как в help-е заявлено, что с помощью DDEEXECUTE можно выполнять чуть ли не команды Visual Basic (те, что используются в макросах).
Вот выдержка из Clarion Help: The Excel command string enclosed by the square brackets is an Excel macro statement. Excel, and many other applications allow you to send a macro statement via the DDEEXECUTE statement. In this particular case, you don't have to know the name of the open Excel file to execute the statement.
Мне нужно подчеркнуть выделенную ячейку (создать нижнюю границу).
В excel это делается, например, командой:
Selection.Borders(9).LineStyle = 1
Почему же мой код ничего не подчеркивает?

Код: Выделить всё
EXCEL:Name='C:\Clario Projects\course-into-text\report1.xls'
RUN('"'&TRIM(EXCEL:Name)&'"')
! GET DDE CHANNEL THREE TIMES
LOOP 3 TIMES
Channel = DDECLIENT('Excel',TRIM(EXCEL:Name))
END
IF Channel < 1 THEN
MESSAGE('Ошибка установки связи с EXCEL!')
RETURN(0)
END
DDEPOKE(Channel,'R1C3',FORMAT(REPORT:Date,@d6.)) ! Работает
DDEEXECUTE(Channel,'[SELECT("R1C2:R1C3")]') ! Работает
DDEEXECUTE(Channel,'[Selection.Borders(9).LineStyle = 1]') ! НЕ РАБОТАЕТ
MESSAGE(ERROR(),,,,,MSGMODE:CANCOPY)
DDECLOSE(Channel)
Clarion 10