Имя: Пароль:
1C
 
Траблы с вызовом Excel
0 Diman
 
23.09.04
17:45
Приветствую всех!
Такая вот фигня... При обращении к Excelю  из V8 через COM хоть убей не работают методы Range, Select :(( Стою на одной ячейке, сдвинуться не можу... Для записи в ячейку работает только FormulaR1C1Local, все остальное говорит - СТРАШНАЯ ОШИБКА!
В чем дело? Может кто напарывался?
Заранее благодарен,
Диман
1 Волшебник
 
23.09.04
17:49
не через COM, а через OLE

Что за ошибка?
2 Diman
 
23.09.04
17:52
ну пусть так ;))...
ошибка, говорит, НЕИЗВЕСТНАЯ...
практически на любом МЕТОДЕ
Своиства, типа FormulaR1C1Local ячеек и т.п. работают
3 Diman
 
23.09.04
17:57
XLApp = ПолучитьCOMОбъект(,"Excel.Application");
XLApp.Activecell.FormulaR1C1Local = "23";
XLApp.Range("A1").Select();


{Форма.Форма(11)}: Ошибка при вызове метода контекста (Select): Неизвестная ошибка
   XLApp.Range("A1").Select();

вот, все-то навсего...
4 Билли Г
 
23.09.04
18:10
XLApp.ReferenceStyle=1;//xlA1
5 Diman
 
23.09.04
18:14
{Форма.Форма(10)}: Ошибка при установке значения атрибута контекста (ReferenceStyle): Неизвестная ошибка
   XLApp.ReferenceStyle=1;
6 Diman
 
23.09.04
18:23
В семерке все эти выкрутасы работают запросто и спокойно, а тут ... :((
7 Diman
 
23.09.04
18:47
т.е. у всех это работает?
8 Zoom
 
24.09.04
12:57
xl = Новый COMОбъект("Excel.Application");  
Книга=xl.Application.Workbooks.Open(ИмяФайла);
ТекЛист=Книга.WorkSheets(1);        
ТекЛист.Cells(1,1).Value = "23";

Вот так оно работает.
9 Guard
 
06.10.04
13:42
А как вызвать Excel не через Ole а через COM ?
10 Diman
 
07.10.04
11:37
To Zoom

{Форма.Форма(30)}: Ошибка при вызове метода контекста (Open): Неизвестная ошибка
   Книга=xl.Application.Workbooks.Open("C:\Temp\Book1.xls");

_Методы_ не работают... ;)))

Замечена еще вот какая странность - начинаем отлаживать код, пытаемся посмотреть Watch'ем полученный экземпляр объекта... Выскакивает окно логина в Outlook, хотя его вроде никто не звал...
Может что-то _фундаментально_ не работает?
V8.0.6.3
Excel 2002
Программист всегда исправляет последнюю ошибку.