Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Можно ли такое сделать (при печати заменять слово) / 14 сообщений из 14, страница 1 из 1
23.08.2006, 11:51:29
    #33936971
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
чтобы при отправке документа на печать в нем заменялось скажем слово "начальник" на "упырь"
...
Рейтинг: 0 / 0
23.08.2006, 12:06:32
    #33937037
121
121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
можно.
...
Рейтинг: 0 / 0
23.08.2006, 12:58:50
    #33937283
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
а как
...
Рейтинг: 0 / 0
23.08.2006, 13:02:58
    #33937305
Stagiere
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
Cильно, видать, Вас достал ваш начальник :))
...
Рейтинг: 0 / 0
23.08.2006, 14:21:01
    #33937611
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
Вставь код в объект ThisWorkbook :)

Код: plaintext
1.
2.
3.
4.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Cells.Replace What:="начальник", Replacement:="упырь", LookAt:=xlWhole, _
        SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
End Sub
...
Рейтинг: 0 / 0
23.08.2006, 14:22:10
    #33937615
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
Создай в документе Normal.dot модуль класса

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Public WithEvents App As Word.Application

Private Sub App_DocumentBeforePrint( _
  ByVal Doc As Document, _
  Cancel As Boolean)
    With Doc.Content.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = "начальник"
        .Replacement.Text = "упырь"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
End Sub

Там же, но только в модуле документа.

Код: plaintext
1.
2.
3.
4.
Dim a As New Class1

Private Sub Document_Open()
    Set a.App = Application
End Sub

Убедись, что у начальника включена поддержка макросов. :)
...
Рейтинг: 0 / 0
23.08.2006, 16:19:03
    #33938155
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
vbaproВставь код в объект ThisWorkbook :)

Код: plaintext
1.
2.
3.
4.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Cells.Replace What:="начальник", Replacement:="упырь", LookAt:=xlWhole, _
        SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
End Sub


так не работает
...
Рейтинг: 0 / 0
23.08.2006, 16:30:10
    #33938211
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
попробуй заменить LookAt:=xlWhole на LookAt:=xlPart , т.е. такой вариант

Код: plaintext
1.
2.
3.
4.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Cells.Replace What:="начальник", Replacement:="упырь", LookAt:=xlPart, _
        SearchOrder:=xlByColumns, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
End Sub
...
Рейтинг: 0 / 0
23.08.2006, 20:27:16
    #33938820
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
когда вставляешь этот код в ThisDocument и запускаешь его на выполнение (синий перевернутый треугольник) спрашивается имя макроса, а после того как указал имя создается голая процедура с таким именем без кода и макрос соответсвенно не выполняется. что делать?
...
Рейтинг: 0 / 0
23.08.2006, 21:03:09
    #33938859
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
делай как Ashton написал. Его код для Word, а мой для Excel.
...
Рейтинг: 0 / 0
24.08.2006, 10:47:53
    #33939391
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
рассажите подробно как это сделать в Word, у меня ругается на блок

Dim a As New Class1

Private Sub Document_Open()
Set a.App = Application
End Sub
...
Рейтинг: 0 / 0
24.08.2006, 10:55:49
    #33939423
vbapro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
Все точна как написано...

AshtonСоздай в документе Normal.dot модуль класса

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Public WithEvents App As Word.Application

Private Sub App_DocumentBeforePrint( _
  ByVal Doc As Document, _
  Cancel As Boolean)
    With Doc.Content.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = "начальник"
        .Replacement.Text = "упырь"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
End Sub

Там же, но только в модуле документа.

Код: plaintext
1.
2.
3.
4.
Dim a As New Class1

Private Sub Document_Open()
    Set a.App = Application
End Sub

Убедись, что у начальника включена поддержка макросов. :)
...
Рейтинг: 0 / 0
24.08.2006, 14:27:26
    #33940347
Ashton
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
Это пример для конкретного документа, а я предложил использовать данный код в модулях файла Normal.dot, чтобы он был применим для всех открываемых документов.
...
Рейтинг: 0 / 0
24.08.2006, 15:53:09
    #33940698
KiLLun
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли такое сделать (при печати заменять слово)
все получилось в код нужно было добавить Option Explicit
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Можно ли такое сделать (при печати заменять слово) / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]