Имя: Пароль:
1C
1С v8
Активировать открытую книгу Excel
0 echo77
 
04.09.13
10:11
Пишу код в 1С8:
Взято отсюда http://help1c.com/faq8/view/1279.html

        Попытка
        Эксель     = Неопределено;
        Книга     = Неопределено;
        Лист     = Неопределено;
        
        Состояние("Выполняется подключение к Excel");
        Попытка
            Книга     = ПолучитьCOMОбъект(ИмяФайла, "Excel.Application");
            Эксель    = Книга.Application;
        Исключение
            Эксель    = Новый COMОбъект("Excel.Application");
            Книга     = Эксель.WorkBooks.Open(ИмяФайла);
        КонецПопытки;
        Лист         = Книга.WorkSheets(ВыбранныйЛист);
        Лист.Activate();
        Эксель.Visible    = Истина;
        
    Исключение
        Сообщить("Не удалось подключить Excel." + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Важное);
        Возврат;
    КонецПопытки;

Если книга не открыта - то она открывается, если открыта - открывается еще раз.
Кто-нибудь сталкивался?
1 echo77
 
04.09.13
10:12
Мне надо реализовать функционал открытия и показа пользователю  книги Excel, при чем, если она уже открыта - просто активировать, если нет - открыть и показать.

Затем я вношу изменения в Excel файл
2 НЕА123
 
04.09.13
10:24
Если Книга = Неопределено ....
3 echo77
 
04.09.13
10:55
Вот эта штука всегда создает новый экземпляр
Книга     = ПолучитьCOMОбъект(ИмяФайла, "Excel.Application");
4 dk
 
04.09.13
10:56
делай
Книга     = ПолучитьCOMОбъект(, "Excel.Application");
и проверяй открытые книги
5 echo77
 
04.09.13
11:28
(4) Эксель    = ПолучитьCOMОбъект(, "Excel.Application");

Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Операция недоступна

- вот такая штука получается, если Excel не запущен
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.