Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.06.2009, 19:59   #1
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию Как вывести сообщение...

Как вывести сообщение перед печатью, что в документе есть скрытый текст?
Busine2009 вне форума Ответить с цитированием
Старый 09.06.2009, 20:25   #2
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

А кому сообщение?

Вы же сами, по Ctrl-Shift-8, можете его посмотреть. Либо найти по Ctrl-F (а там Формат→скрытый).
Sasha_Smirnov вне форума Ответить с цитированием
Старый 09.06.2009, 20:28   #3
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Необходимо нажать на кнопку, затем должно появиться сообщение, что в документе содержится скрытый текст (если он есть), и затем должно появиться диалоговое окно "Печать" (витер сделал такой макрос).

Последний раз редактировалось Busine2009; 10.06.2009 в 06:31.
Busine2009 вне форума Ответить с цитированием
Старый 09.06.2009, 22:08   #4
CaptainNemo
Пользователь
 
Аватар для CaptainNemo
 
Регистрация: 02.06.2009
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Busine2009 Посмотреть сообщение
Смысл в том, чтобы нажать на кнопку Печать
Если я не ошибаюсь, MS Word в отличие от MS Excel нет события BeforePrint. Поэтому, что бы запускать макрос на выполнение по нажатию на кнопку "Печать" можно поступить следующим образом…
В модуль класса вставить код такого содержания:

Код:
Public WithEvents myAplication As Word.Application
Private Sub myAplication_DocumentBeforePrint(ByVal Doc As Document, Cancel As Boolean)
Dim myShablon As String
Dim myRez As VbMsgBoxResult
Application.ScreenUpdating = False
'Cancel = True
myShablon = ActiveDocument.AttachedTemplate.Name
If myShablon = "Doc1.dot" Then
        myRez = MsgBox("Выполнить проверку?", vbQuestion + vbYesNo)
    If myRez = vbYes Then
        Select Case ActiveDocument.Content.Font.Hidden
        Case 0
        MsgBox ("Нет скрытого текста")
        Case Is > 0
        MsgBox ("Есть скрытый текст")
        End Select
    End If
    'ActiveDocument.PrintOut
End If
Application.ScreenUpdating = True
End Sub
А в модуль ThisDocument вставить такой вот код

Код:
Dim myClass As New Class1
Private Sub Document_New()
    Set myClass.myAplication = Word.Application
End Sub
Затем сохранить файл как шаблон с именем Doc1.dot
В последствии для всех документов, которые будут созданы на основе этого шаблона при нажатии на кнопку "Печать" будет выводиться запрос на проверку наличия скрытого текста… (см. файл)
Вложения
Тип файла: zip Doc1.zip (14.1 Кб, 13 просмотров)
Android & Linux

Последний раз редактировалось CaptainNemo; 09.06.2009 в 22:11.
CaptainNemo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вывести сообщение когда в столбце уже заполнена последняя ячейка StringGrid ARXangel Общие вопросы Delphi 5 18.03.2009 08:24
Как вывести сообщение типа "внимание" при удалении записи из БД Alex_Sokolov Помощь студентам 7 06.01.2009 13:50
Как убрать сообщение об ошибке? AngelOfDeath Работа с сетью в Delphi 2 01.05.2008 11:44
Как принять сообщение (SendMessage) Crazyman Win Api 4 20.02.2008 04:42
Как прочитать сообщение по ICQ? Иллидан Работа с сетью в Delphi 5 18.02.2008 18:33