Имя: Пароль:
1C
1С v8
Вывести документ Word удалив из него два листа
0 Serega103
 
15.02.12
17:13
Есть документ MSWord.Я его использую как шаблон:

       WordДокумент = MSWord.Documents.Open(ИмяФайла);
       WordДокумент.Activate();
       Замена = WordДокумент.Content.Find;        
       Замена.Execute("[=-НомерДоговора-=]", , , , , , , , , НомерДок, 2);
и т.д.
Сейчас встала задача при включеннной галке печатать только последнюю страницу документа MSWord.
Как это сделать?Я подумал что надо удалить первые 3 страницы документа, но вот как это реализовать не знаю!
1 SalavatUlaev
 
15.02.12
17:15
Кто тебе мешает иметь 2 шаблона ?
2 Serega103
 
15.02.12
17:16
Если бы шаблон был один, еще ничего, но так как их мноооооого, то такое решение как еще один шаблон не подходит!
3 SalavatUlaev
 
15.02.12
17:17
Ну тогда поудаляй вручную и запиши в макросы. Увидишь че надо кодить
4 Serega103
 
15.02.12
17:18
Нашел в интернете код
      Text = Word.S_election;
      // Ctrl-A
       Text.WholeStory();
       // Del
       Text.Delete(1, 1);
Этот код работает и очищает весь документ, но мне надо только первые 3 страницы
5 Fish
 
15.02.12
17:18
(2) Стандартный подход:
1. включаешь запись макроса, удаляешь первые 3 страницы документа, записываешь макрос.
2. смотришь макрос
3. пишешь в 1С :))
6 Fish
 
15.02.12
17:19
(4) Потому что Ctrl-A - это выделить весь документ. Ясно ведь написано :)))
7 Serega103
 
15.02.12
17:27
Это понятно, просто я что то никак не разберусь как из Word эту инфу вытащить, может у кого то есть уже готовое решение проблемы?
8 Serega103
 
15.02.12
17:34
В макросе записана такой код

   Selection.MoveDown Unit:=wdLine, Count:=10, Extend:=wdExtend
   Selection.MoveRight Unit:=wdCharacter, Count:=56, Extend:=wdExtend
   Selection.Delete Unit:=wdCharacter, Count:=1
как его перевести на 1с-ный?
9 Serega103
 
15.02.12
17:47
Подскажите, плз
10 n koretsky
 
15.02.12
19:41
вместо Selection.MoveDown Unit:=wdLine, Count:=10, Extend:=wdExtend
в макросе подставляй Selection.MoveDown 1, 10, 1
и так далее для всех не числовых значений, пока не получится нужный результат.
когда получится, в 1С пиши Selection.MoveDown(1, 10, 1) (числа, что получились, вместо аргументов)

у ВБ для подобного рода аргументов всегда есть числовые аналоги.
может, сможешь их гдето найти в инете, то тогда будешь брать оттуда.