Имя: Пароль:
1C
1C 7.7
v7: Диалог сохранения файла
,
0 SeeWorld
 
31.08.12
14:44
Функция ОкноСохраненияФайла()
   ИмяВыбрФайла = "Выгрузка";
   ИмяПути = "C:\";
   ФС.ВыбратьФайл(1, ИмяВыбр Файла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );    
КонецФункции
Всем привет! Не пойму как сделать, чтобы сохранить эксель документ с помощью диалогова окна сохр. файла. Раньше использовал SaveAs(ПутьКФайлу).
1 Voronve
 
31.08.12
14:45
Едренать...
2 vladko
 
31.08.12
14:47
Таб.Записать();

Синтаксис:
Записать(<ИмяФайла>,<ТипФайла>)
Назначение:
Записать таблицу в файл.
Параметры:
<ИмяФайла> - имя файла.
<ТипФайла> - необязательный параметр. Числовое или строковое выражение, определяющее тип файла:
· отсутствует, 0 или ''MXL'' - формат 1C;
· 1 или ''XLS'' - формат Ms Excel;
· 2 или ''HTM'' или ''HTML'' - формат HTML;
· 3 или ''TXT'' - формат TXT.
Замечание:
Метод может использоваться при работе с таблицей в режиме ввода данных.
3 SeeWorld
 
31.08.12
15:01
ИмяВыбрФайла = "Выгрузка";
   ИмяПути = "C:\";
   ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );
   Эксель.Записать(ИмяВыбрФайла, 1);
Написал так, но не работает( я что-то не понимаю.
4 vladko
 
31.08.12
15:03
что такое Эксель.?
5 SeeWorld
 
31.08.12
15:04
Эксель = СоздатьОбъект("Excel.Application");
6 vladko
 
31.08.12
15:06
таб = СоздатьОбъект("Таблица");
таб.ВывестиСекцию("Строка");
ИмяВыбрФайла = "";
ИмяПути = "";
ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );
ПолноеИмя = ИмяПути + ИмяФайла;
таб.Записать(ПолноеИмя , 1);
7 vladko
 
31.08.12
15:07
и что ты с ним (Эксель.) делаешь после создания объекта? Открываешь готовый экселевский документ?
8 SeeWorld
 
31.08.12
15:08
ДА и заполняю, а потом сохраняю.
9 SeeWorld
 
31.08.12
15:11
Эксель.SaveAs(ПутьКФайлу) так сохраняет, а через диалог нет.
10 vladko
 
31.08.12
15:13
тогда
ВходExcel = СоздатьОбъект("Excel.Application");
ВходExcel.Application.Workbooks.Open(СокрЛП(ИмяФайла));
......
ИмяВыбрФайла = "";
ИмяПути = "";
ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );
ПолноеИмя = ИмяПути + ИмяФайла;

ВходExcel.ActiveWorkbook.SaveAs(ПолноеИмя);
ВходExcel.ActiveWorkbook.Close();
---
как-то так. в visual basice не силён ;)
11 SeeWorld
 
31.08.12
15:24
Не получается)
12 vladko
 
31.08.12
15:28
как ругается? Что в итоге получилось у тебя в программном коде?
13 SeeWorld
 
31.08.12
15:33
Эксель = СоздатьОбъект("Excel.Application");
       Эксель.Application.Workbooks.Open(СокрЛП("Выгрузка"));
ИмяВыбрФайла = "Выгрузка";
   ИмяПути = "C:\";
   ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );
   Эксель.ActiveWorkbook.SaveAs(ИмяПути + "Выгрузка");
Эксель.ActiveWorkbook.Close();
14 SeeWorld
 
31.08.12
15:34
Эксель = СоздатьОбъект("Excel.Application");
       Эксель.Application.Workbooks.Open(СокрЛП("Выгрузка"));
ИмяВыбрФайла = "Выгрузка";
ИмяВыбрФайла = "Выгрузка";
   ИмяПути = "C:\";
   ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , );
   Эксель.ActiveWorkbook.SaveAs(ИмяПути + "Выгрузка");
Эксель.ActiveWorkbook.Close();
15 SeeWorld
 
31.08.12
15:34
(13) правильный
16 SeeWorld
 
31.08.12
15:35
в (14) лишняя строка
17 SeeWorld
 
31.08.12
16:21
ИмяВыбрФайла = "Выгрузка";
   ИмяПути = "C:\";
   Если ФС.ВыбратьФайл(1, ИмяВыбрФайла, ИмяПути, "Сохранить Excel документ", "Excel (*.xls)|*.xls", , ) = 1 Тогда
       Книга.SaveAs(ИмяПути + ИмяВыбрФайла);
   КонецЕсли;
Сам решил проблему)