Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > 1C: Предприятие, SAP, ERP и учётные системы > Перенос информации из 1С в Word


Автор: ss18 30.10.2007, 10:14
Вопрос один, как мне перенести строку или табличную часть в Word.

Автор: SaschaL 30.10.2007, 17:11
А можно уточнить версию 1С? и что именно вы хотите перенести в MS Word, или просто хотите формировать печатную форму в формате MS Word.

Автор: ss18 2.11.2007, 07:50
Версия 1С: 1С 8.0.18.2.
Задача: Изменилась с момента написания сообщения и выглядит теперь так, как програмно добавить страницу в объект типа Word.
Пояснения к задаче: 

- создаю объект СОМ типа Word на основе макета Active Document:


Макет = ПолучитьМакет("Макет");
Word = Макет.Получить();


- получаю  документ в этом объекте:


Документ = Word.Application.Documents(1);
Документ.Activate();


- дальше встает проблема, как добавить страницу в данном документе, первая страница там уже есть, надо добавить к приемеру ещё  одну - вторую;

Личные рассуждения (в расчет можно не принемать): я так понимаю с объектами СOМ, в частности с приложением Word нужно общаться на Visual Basic. Хотелось бы узнать, какая функция отвечает за добавление страницы в документе и есть ли она там вообще.

 

Автор: ss18 2.11.2007, 11:46
Да, и ещё одна проблемка, как програмно распечатать сраницу документа в той же 1С 8.0

Автор: stil 9.11.2007, 12:44
Вот пример добавления новой страницы в ворд

            word = Новый COMОбъект("Word.Application");
            word.Visible=1;
            док = word.Documents.Add();
            док.ActiveWindow().Selection.InsertBreak(1)

Автор: KastorTroy 14.12.2007, 02:01
Народ, помогите, как перенести этот код в 1С?
Код

Sub Mac9()
'
'
    Selection.GoTo What:=wdGoToBookmark, Name:="ПунктСФаксимиле"
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = ""
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Delete Unit:=wdCharacter, Count:=1
    Selection.Delete Unit:=wdCharacter, Count:=1
End Sub



"ПунктСФаксимиле" - название закладки, макрос переходит на эту закладку и удаляет ее и пустую стоку.

Автор: koloboc74 23.12.2008, 07:21
В семерки просто все 

    ВыбратьСтроки();
        Ном=0;   
        Пока (ПолучитьСтроку() = 1) Цикл 
            Ном=Ном+1;      
            Если Ном>1 Тогда
                Док.Tables.Item(2).Rows.Add();      
            КонецЕсли;
            For i=2 to 6 Do
                Если i=2 Тогда 
                    Значение=Товар.Наименование;
                ИначеЕсли i=3 Тогда
                    Значение=Товар.ЕдИзм.Наименование;
                ИначеЕсли i=4 Тогда
                    Значение=Формат(КолВо,"Ч010.2");
                ИначеЕсли i=5 Тогда
                    Значение=Формат(Товар.Цена,"Ч010.2");
                ИначеЕсли i=6 Тогда
                    Значение=Формат(Товар.Цена*КолВо,"Ч015.2");
                    
                КонецЕсли;            
                Док.Tables.Item(2).Cell(Ном+1,i).Range.InsertAfter(СокрЛП(Строка(Значение)));         
            EndDo;      
            
        КонецЦикла;
    конецесли;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)