С Новым годом! Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
olchash
1

Почему печатается документ word полностью, а не указанные страницы

24.05.2012, 07:21. Показов 2997. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.
стоит задача:
исходный файл в формате .rtf, содержит выписки по счетам, собран я так поняла из многих других отдельных файлов, мне дается уже 1н объединенный файл.
в зависимости от кол-ва листов в выписке принтер печатает 1й лист в 1н лоток, другие во второй.
это решили таким кодом:

Visual Basic
1
2
3
4
5
6
7
8
9
10
Sub print4595()
    For i = 1 To ActiveDocument.Sections.Count
    Selection.GoTo What:=wdGoToSection, Which:=wdGoToFirst, Count:=i, Name:=""
    With Selection.PageSetup
        .FirstPageTray = 263
        .OtherPagesTray = 264
        .DifferentFirstPageHeaderFooter = True
    End With
    Next i
End Sub
сейчас хотят, что бы выписки сортировались, сначала на печать уходили выписки из 1го листа, потом из 2х и т.д.

написала код:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
cnt = CInt(Val(InputBox("Введите кол-во страниц в печатаемых выписках (1, 2 или 3 )", "Ввод количества листов", "")))
 
If cnt = 1 Then
    ibegin = 1
    For i = 1 To ActiveDocument.Sections.Count
        ActiveDocument.Sections(i).Range.Select
        iend = Selection.Information(wdActiveEndPageNumber)
        If iend - ibegin = 0 Then
            ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="" & ibegin & "", To:="" & iend & ""
            
        End If
        ibegin = iend + 1
    Next i
Exit Sub
 
ElseIf cnt = 2 Then
 
    ibegin = 1
    For i = 1 To ActiveDocument.Sections.Count
        ActiveDocument.Sections(i).Range.Select
        iend = Selection.Information(wdActiveEndPageNumber)
        If iend - ibegin = 1 Then
            ActiveDocument.PrintOut Range:=wdPrintFromTo, From:="" & ibegin & "", To:="" & iend & ""
                
        End If
    ibegin = iend + 1
    Next i
 
Exit Sub
...
end if
 
end sub
печатает полностью документ. не различает страницы вообще.

пробовала другой вариант:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub printsort()
ibegin = 1
 
For i = 1 To ActiveDocument.Sections.Count
ActiveDocument.Sections(i).Range.Select
iend = Selection.Information(wdActiveEndPageNumber)
If iend - ibegin = 0 Then
    ActiveDocument.PrintOut Range:=wdPrintSelection
End If
ibegin = iend + 1
Next i
 
For i = 1 To ActiveDocument.Sections.Count
ActiveDocument.Sections(i).Range.Select
iend = Selection.Information(wdActiveEndPageNumber)
If iend - ibegin = 1 Then
    ActiveDocument.PrintOut Range:=wdPrintSelection
End If
ibegin = iend + 1
Next i
....
end sub
при таком варианте печатает по порядку, но! почему то колонтитулы печатаются криво не с теми номерами в каждой выписке где более 1й страницы(есть колонтитул всего страниц в выписке, и порядковый номер в выписке). и печатается лишний листок с какой то непонятной обрезанной от предыдущего листа информацией. сбоку как то лист немного пропечатывается лишний.

word документ выложить не могу.. там персональная информация.



да и подозреваю первый вариант верный. и проблема какая то есть в самом rtf файле, если через стандартное меню выбрать печать любой конкретной страницы печатается весь! документ. голову сломала. помогите?
офис 10й, пробовала сохранять в формате docx, doc файл, та же фигня, печатается полностью при выборе конкретной страницы из стандартного офисовского меню печать
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.05.2012, 07:21
Ответы с готовыми решениями:

Почему содержимое TextBox не полностью записывается в файл Word?
Из-под excel создаю файл Word и переписываю туда содержимое Textbox, когда это самое содержимое...

Как открыть документ Word 2003 в режиме разметки страницы?
Часто некоторые сохранённые Word-документы открываются в режиме "Обычный режим". Для удобства...

Табличный документ печатается с пустыми страницами
Здравствуйте. Вывожу на печать документ в собственной конфигурации 1с 8.3. Команду печати создал...

Из офиса печатается только один документ
Здравствуйте. На одном из наших предприятий обнаружилась одна неприятнейшая проблема. Имеем...

0
24.05.2012, 07:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.05.2012, 07:21
Помогаю со студенческими работами здесь

Не правильно печатается фон в MS Word
Написал в Word-е текст. Добавил через заливку цвета фон. При печати фон выводится многократно, то...

Сохранение страницы word от разрыва до разрыва в отдельный документ
Здравствуйте уважаемы форумчане. С прошедшим Вас НГ! Существует следующая задача которую я...

Почему печатается значение переменной а = 4,
uses Crt; Var a, b: Integer; begin ClrScr; ReadLn(a, b); if (5 * a + 4 <= a *b) then ...

Почему в консоли печатается ? вместо символа валюты?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru