Имя: Пароль:
1C
1С v8
Конфликт имен при открытии workbook в Эксель
0 kenshinka
 
20.06.14
11:33
Добрый день.

В продолжении темы http://forum-mista.pro/topic.php?id=703032.

Никто так и не научился обходить эту ошибку перед открытием workbook?

Думал поможет удалению скрытых имен перед непосредственной работой в эксель.

Попытка
        Эксель = Новый COMОбъект("Excel.Application");
        Эксель.DisplayAlerts = 0;
    Исключение
        Сообщить(ОписаниеОшибки() +    " Программа Exсel не установлена на данном компьютере!");
        Возврат;
    КонецПопытки;
    
    Попытка
        Книга = Эксель.WorkBooks.Open(ПутьКФайлу);
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;
    
    Книга.ActiveSheet.AutoFilterMode = 0;
    Книга.Names.Item("_FilterDatabase").Delete();
    
    Попытка
        Книга.SaveAs(ПутьКФайлу);
    Исключение
        Сообщить(ОписаниеОшибки()+" Файл не сохранен!");
        Возврат;
    КонецПопытки;
    
    Эксель.Quit();
    Эксель.DisplayAlerts = 1;


Но ошибка же выскакивает при

Книга = Эксель.WorkBooks.Open(ПутьКФайлу);

Как до этого метода удалить эти конфликты имен :(
1 Вазелин
 
20.06.14
11:34
>> Эксель.DisplayAlerts = 0;
не вредит диагностике?
2 МихаилМ
 
20.06.14
11:35
ищите другую тему с решением.
3 kenshinka
 
20.06.14
11:39
(2) если не сложно - ткни носом в тему, про которую говоришь. Никаких тем кроме (0) и тем с анализом эксель файла средствами эксель я не видел (в том числе сохранение 2003 формат экселя).
4 kenshinka
 
20.06.14
11:43
(1) кроме дополнительного сообщения "Такое имя уже существует" при переименовании я не увидел.
5 МихаилМ
 
20.06.14
11:44
(4)
на буковку "я" нажмите.

там приводится аж 4 решения.

не припомню, чтобы я с Вами на "ты" переходил
6 kenshinka
 
20.06.14
11:52
(5) Прошу прощения, что обратился к Вам на "ты"
7 kenshinka
 
20.06.14
16:10
(5) Большое спасибо.

Проблему решил, используя конструкцию ПолучитьComСоединение()