1

Тема: Microsoft Word 97-2003

На удивление мало людей, более-менее разбирающихся в компьютерах, умеют работать в Word'е. Особенно странно бывает, когда секретарша, у которой Word основная рабочая программа, создаёт документы вроде такого. Это абсолютно реальный документ, утащенный с компьютера знакомых.
Ещё меньше людей настраивают Word под себя и разбираются с неочевидными с первого взгляда функциями. В качестве первого шага к углубленному изучению самой популярной программы для работы с текстами предлагаю всем желающим скачать шаблон Normal.dot (для MS Office 2003) с настроенными инструментальными панелями и тремя макросами, очень полезными при обработке текста.
Макросы Insert_Plain_Text и To_Russian просто дублируют пункты меню для ускоренного вызова нужных команд, а на макрос Del_Spaces я когда-то в 2001 году целый вечер потратил, но сил и времени с тех пор он мне сэкономил очень много. Коротко говоря, он убирает лишние пробелы из текста. Привожу его код с дополнительными комментариями, которых нет в оригинале.

Sub Del_Spaces()
'
' Del_Spaces Макрос
' Очистка текста от мусора и лишних пробелов
' Макрос создан 03.07.01 John
'
Dim Style, Response, C
Dim fl_Para, fl_Space As Boolean
Style = vbYesNo + vbCritical + vbDefaultButton2
fl_Para = False
fl_Space = False
    
' Замена переносов строки на символы конца абзаца
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
    .Text = "^l"
    .Replacement.Text = "^p"
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll

Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting

' Основной блок - начало
Selection.HomeKey Unit:=wdStory
For C = 0 To Word.ActiveDocument.Characters.Count
    Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend

    If Selection.Text = " " Then
        If (fl_Space = False) And (fl_Para = False) Then
            fl_Space = True
            Selection.MoveRight Unit:=wdCharacter, Count:=1
        Else
            Selection.Text = ""
        End If
    Else
        If Selection.Text = Chr(13) Then
            fl_Para = True
'            Response = MsgBox("Продолжить? S=" + Selection.Text, Style, "Обработка пробелов", "", 0)
'            If Not Response = vbYes Then GoTo Last_Line
        Else
            fl_Para = False
        End If
        Selection.MoveRight Unit:=wdCharacter, Count:=1
        fl_Space = False
    End If
    
Next C

'Last_Line:

Selection.HomeKey Unit:=wdStory
Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
If Selection.Text = " " Then Selection.Text = "" Else Selection.MoveLeft Unit:=wdCharacter, Count:=1

Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
    .Text = " ^p"
    .Replacement.Text = "^p"
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
' Основной блок - конец

' Замена трёх подряд точек на многоточие
Selection.Find.ClearFormatting
Selection.Find.Replacement.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.Find.Execute Replace:=wdReplaceAll

' Ликвидация пробелов после открывающей и перед закрывающей скобками
Selection.Find.ClearFormatting
Selection.Find.Replacement.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.Find.Execute Replace:=wdReplaceAll

Selection.Find.ClearFormatting
Selection.Find.Replacement.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.Find.Execute Replace:=wdReplaceAll

' Уничтожение мягких переносов
Selection.Find.ClearFormatting
Selection.Find.Replacement.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.Find.Execute Replace:=wdReplaceAll

' Дополнение к основному блоку
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
    .Text = "^p "
    .Replacement.Text = "^p"
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll

End Sub

Жду вопросов и комментариев.

Здесь дважды два не четыре, а около четырех, да и то лишь в ясную погоду. Андрей Лазарчук «Транквилиум»

Был этот мир глубокой тьмой окутан.
Да будет свет! И вот явился Ньютон.
Но сатана недолго ждал реванша.
Пришел Эйнштейн - и стало все, как раньше.

2

Re: Microsoft Word 97-2003

Спасибо, John! Сегодня установил твой шаблон одной из сотрудниц нашего отдела кадров. Посмотрим, какие будут впечатления?

Будьте доброжелательны и Вам уделят максимум внимания smile

3

Re: Microsoft Word 97-2003

Я не особо разбираюсь в офисных программах, для LibreOffice есть что нибудь подобное?

4

Re: Microsoft Word 97-2003

Ярпен Зигрин пишет:

Я не особо разбираюсь в офисных программах, для LibreOffice есть что нибудь подобное?

Я с LibreOffice не работал, но, в принципе, это одна из ветвей разработки OpenOffice, значит поддерживает кучу языков программирования и сделать там можно много чего.

Здесь дважды два не четыре, а около четырех, да и то лишь в ясную погоду. Андрей Лазарчук «Транквилиум»

Был этот мир глубокой тьмой окутан.
Да будет свет! И вот явился Ньютон.
Но сатана недолго ждал реванша.
Пришел Эйнштейн - и стало все, как раньше.

5

Re: Microsoft Word 97-2003

Привет форумчане. Такая беда. У одной особы перестал работать офис 2010. Она берет диск с офисом и начинает устанавливать. Не ставится. Звонит мне говорит что надо поставить. Даю ей свой говорю что бы сначала удалили старый. Через некоторое время звонит опять не ставится. Решаю сам посмотреть. И....о Боже...там их штуки три установлено разных сборок...поудалял все нафиг...теперь вообще ниче не могу поставить не седьмой не десятый...скачивал с сайта ихнию прогу Fix ...пишет что можете установить офис 2010...устанавливаю нифига ошибка 1719.... служба инсталятора запущена один фиг эта ошибка....кто нить знает куда копать?...переустановка винды не подходит там всякие банкклиент и тд и тп... поставил либруоффис пока....девка замещала главбуха  и тут ТАКОЕ....выйдет главбух во обрадуется smile надо выручать парни .... заранее спасибо..

Не ругайте меня, я не волшепник, я тока учусь smile

6 (2013-09-21 15:09:39 отредактировано Nistur)

Re: Microsoft Word 97-2003

Попробуй при установке офиса указать свой каталог для установки (вбить ручками). Раньше на старых офисах канало, на 10-м не пробовал.

Доброго времени суток! Борис aka Nistur

7

Re: Microsoft Word 97-2003

А как? дело в том что инсталятор не дает выбрать...сразу начинает установку и все..

Не ругайте меня, я не волшепник, я тока учусь smile

8

Re: Microsoft Word 97-2003

короче создал папку в Program Filesx86.... распаковал туда офис...попытался установить примерно на середине эта же ошибка..

Не ругайте меня, я не волшепник, я тока учусь smile

9

Re: Microsoft Word 97-2003

В config.xml , где что то типа инсталллокэйшн. К сожаленью под рукой ничего нет. На форуме со смартфона

Доброго времени суток! Борис aka Nistur

10

Re: Microsoft Word 97-2003

<!-- <INSTALLLOCATION Value="%programfiles%\Microsoft Office" /> -->  что именно меняем? винда 64 програмфайл папки две.....просто и х86 ...

Не ругайте меня, я не волшепник, я тока учусь smile

11

Re: Microsoft Word 97-2003

<!-- <INSTALLLOCATION Value="%programfiles%\Microsoft Office1" /> -->  вот так можно? smile

Не ругайте меня, я не волшепник, я тока учусь smile

12

Re: Microsoft Word 97-2003

Ошибка 25004.Config.Xml not specified;

Не ругайте меня, я не волшепник, я тока учусь smile

13

Re: Microsoft Word 97-2003

А если подойти к проблеме с другой стороны? Воспользоваться точкой восстановления и "откатить" систему до еще рабочего состояния? Portable Office, конечно, - не айс, но на некоторое время может помочь (чтобы не замусоривать реестр лишними установками до выяснения проблемы).

Будьте доброжелательны и Вам уделят максимум внимания smile

14

Re: Microsoft Word 97-2003

Андрей доброго... поставил я либро...а точки восстановления все сегодняшним числом...а проблема возникла неделю назад...

Не ругайте меня, я не волшепник, я тока учусь smile

15 (2013-09-21 21:19:47 отредактировано porta)

Re: Microsoft Word 97-2003

Бингооооо!!!!!!!!!   проблема решилась вот так http://forum.oszone.net/thread-170848.html
Всем большое спасибо за участие! smile

Не ругайте меня, я не волшепник, я тока учусь smile

16

Re: Microsoft Word 97-2003

Супер! Хороший совет, будем применять wink

Будьте доброжелательны и Вам уделят максимум внимания smile