Имя: Пароль:
1C
1С v8
Подскажите почему c Excel 2003, 2007 код работает, а с excel 2013 нет?
0 Ivan_495
 
22.07.16
10:55
Подскажите почему c Excel 2003, 2007 код работает, а с excel 2013 нет?

КудаСохранитьЭксель="D:\Pas_otladka\ps.xlsx";

ДокЭксель = Новый COMОбъект("Excel.Application");
ДокЭксель.DisplayAlerts=0;
ОбщаяКнига=    ДокЭксель.WorkBooks.Add();
                

ОбщаяКнига.SaveAs(КудаСохранитьЭксель,51);//здесь вылетает ошибка

Ошибка при вызове метода SaveAs .Произошла исключительная ситуация Excel
1 Злопчинский
 
22.07.16
10:56
ну запиши макрос и запусти и посмотри что говорит
2 Ivan_495
 
22.07.16
11:07
а в 2013 есть метод SaveAs?
3 Горогуля
 
22.07.16
11:09
ну запиши макрос и запусти и посмотри что говорит что ли..
а ещё можно употребить ТабДокумент
4 Ivan_495
 
22.07.16
11:14
(1),(3) нет у меня excel 2013
5 Ivan_495
 
22.07.16
11:22
проверить вариант
Excel_арр = Новый COMОбъект("Excel.Application");
Excel = Excel_арр.WorkBooks.Open(печФайл);
. .
Excel.Save();
Excel.Close();
Excel_арр.Application.Quit();
http://1c-pro.ru/threads/rabota-s-excel.6651/
6 Ivan_495
 
22.07.16
12:04
может у кого-то есть вариант работающий с 2013 excel?
7 Optan
 
22.07.16
12:13
ОбщаяКнига.SaveAs(КудаСохранитьЭксель,50) тоже падает?
8 Ivan_495
 
22.07.16
13:35
(7) не проходит . таже ошибка
9 VladZ
 
22.07.16
13:40
(0)  Не работает в 2013м? Да и фиг на него.  Работай в 2007м.
10 Ivan_495
 
22.07.16
13:43
(9) заказчик достал
11 Pahomich
 
22.07.16
13:45
Пейчас можно считать или создать в табличное поле, делать там что угодно языком 1с, а затем сохранить в любую версию ексел. Это с версии 8.3.6.не помню точно.
12 Pahomich
 
22.07.16
13:45
(11) *сейчас
13 Optan
 
22.07.16
13:53
(8)
А так?
[Code]
    ДокЭксель.DisplayAlerts= False
    ОбщаяКнига.Visible = True;
    ОбщаяКнига.ActiveWorkbook.SaveAs(КудаСохранитьЭксель);
    ДокЭксель.DisplayAlerts= True;
[\Code]
14 b_ru
 
22.07.16
13:59
Да причем тут версия Эксель. Явно же или пути нет, или прав на папку.
15 Флориан
 
22.07.16
14:08
в службе компонентов пользователь какой стоит?
16 osa1C
 
22.07.16
14:19
(14) а вот нет... Недавно с тем же самым бился, с Эксель 2007 работает. Ставишь на ту же машину Эксель 2016, все.... Save или SaveAs  не работают. Короче я так это и не победил
17 Ivan_495
 
22.07.16
14:22
(16) вот и у меня засада
18 Ivan_495
 
22.07.16
14:24
вот этот код работает
Excel_арр = Новый COMОбъект("Excel.Application");
Excel = Excel_арр.WorkBooks.Open(печФайл);
. .
Excel.Save();
Excel.Close();
Excel_арр.Application.Quit();

но мне надо склейит файл excel из нескольких файлов и разместить их на разных закладках
вообщем без saveas() не обойитись
19 Jokero
 
22.07.16
14:24
SaveAs2
20 osa1C
 
22.07.16
14:25
(17) У меня не было времени ковырятся. Хорошо заказчик согласился на то, что отчеты я ему в 1С вывожу, а уж в Excel они уже сами их через Сохранить как сохраняют. Но этот вопрос меня тоже до сих пор волнует.
21 osa1C
 
22.07.16
14:30
(18) Попробуй как в (13) может и правда проблема в отображении
22 Ivan_495
 
22.07.16
14:52
ОбщаяКнига.Visible = True;

ругается нет такого свойства
23 Ivan_495
 
22.07.16
14:59
(11) у меня пять табличных полей, как предлагаете их сохранить в excel?
если методом табл.записать() не видел стобы оно писало на опред закладку
24 Ivan_495
 
22.07.16
15:00
(13) не работает
25 Optan
 
22.07.16
15:47
(22) ***ДокЭксель.Visible = True;
26 Cyberhawk
 
22.07.16
15:54
С xslx сам бог велел работать методом Native, без СОМ-модели, как с файлом-архивом. Гарантированно все всегда и везде работает. Правда, тямы или времени может не хватить для каких-нибудь выкрутасов.
А вот с docx, к сожалению, не всегда Native прокатывает.
27 Ivan_495
 
22.07.16
15:58
(25) пробовал,
ДокЭксель.DisplayAlerts= False
ДокЭксель.Visible = True;
ОбщаяКнига.ActiveWorkbook.SaveAs(КудаСохранитьЭксель); здесь вылетает
28 Ivan_495
 
22.07.16
17:39
ДокЭксель.DisplayAlerts= False
ДокЭксель.Visible = True;
вот так сделал
29 Ivan_495
 
22.07.16
17:39
всем спасибо