Имя: Пароль:
1C
1C 7.7
v7: Сохранение печатной формы (выходной таблицы) в ексель
0 vitosha
 
09.01.15
08:13
Доброе утро) Ситуация такая: если печатаю из предприятия, то печатается на один лист (все как надо), а если же сохраняю в ексель и печатаю из ексель, то форма разбивается на 4 листа. Где нужно искать проблему в 1с или ексель? спасибо
1 Мимохожий Однако
 
09.01.15
08:16
В экселе выставь диапазон печати и масштаб
2 vitosha
 
09.01.15
08:31
(1) + ещё в екселе приходится строки раздвигать. А возможно вообще сделать так, чтобы из предприятия сохранять и в екселе без дополнительных действий распечатать?
3 Мимохожий Однако
 
09.01.15
08:32
Проще сразу печатать из 1С.
4 vitosha
 
09.01.15
08:42
(3) понятно, спасибо)
5 Chameleon1980
 
09.01.15
09:02
в екселе - параметры страницы
можно для вашего случая сделать
разместить не более чем на 1 листе в высоту и не более, чем на 1 листе в ширину.
или просто попробовать сделать по ширине листа.
И да.... посмотреть на предмет наличия на листе справа лишних (пустых) колонок.
6 Масянька
 
09.01.15
09:06
(4) Посмотри Йоксель (внешняя компонента)
Функция ПодготовитьФайл()

    Ошибка = 0;

    Попытка
        ЗагрузитьВнешнююКомпоненту("SpreadSheet.dll");
    Исключение
        Предупреждение("Не удалось загрузить компоненту SpreadSheet.dll.");
        Ошибка = 1;
        Возврат Ошибка;
    КонецПопытки;
    
    Йоксель        = СоздатьОбъект("ТабличныйДокумент");
    Конвертер    = СоздатьОбъект("КонвертерExcel");
    
    ВремТабл    = Конвертер.Создать();
    
    Йоксель.ЗагрузитьИзТаблицы(Таб);
    
    // первая строка с кнопкой "Отправить" - удаляем
    Йоксель.УдалитьСтроки(1, 1);
    
    ВремТабл.Листы.Добавить("Лист", Йоксель);
    
    Параметры    =    Йоксель.ПараметрыПечати;
    Параметры.ПолеСверху    = 50;
    Параметры.ПолеСнизу        = 50;    
    Параметры.ПолеСлева        = 50;
    Параметры.ПолеСправа    = 50;
    Параметры.Ориентация    = 1;
    
    ВремТабл.ПараметрыКонвертера.РаспознаватьЧисловыеЗначения = 1;
    
    Ответ = ФС.ВыбратьФайл(1, ИмяФайла, КаталогДляЗаписи, "Сохранить файл", "xls-файлы (*.xls)|*.xls", "xls");
    
    Если Ответ = 1 Тогда
        // сохраняем файл в выбранном каталоге
        ВремТабл.Записать(КаталогДляЗаписи + ИмяФайла);
        Йоксель.Очистить();

        ОтветПроЗакрыть = Вопрос("Закрыть печатную форму?", "Да+Нет+Отмена", 60);
        Если ОтветПроЗакрыть = "Да" Тогда
            Таб.Показать(, , -1);
        КонецЕсли;
        
    КонецЕсли;
    
    Возврат Ошибка;
    
КонецФункции
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс