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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2009, 23:50   #1
Valyano
Новичок
Джуниор
 
Регистрация: 08.12.2009
Сообщений: 2
Сообщение Замена знаков пунктуации

Здравствуйте! У меня такой вопрос. Есть текст и в нем нужно исправить такие ковычки «...текст...» на такие "...текст..." И знак ; на знак , Заранее благодарен!!!
Valyano вне форума Ответить с цитированием
Старый 09.12.2009, 07:22   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Ctrl+H, а дальше разберёшься
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 09.12.2009, 07:47   #3
garik64
Форумчанин
 
Регистрация: 09.07.2009
Сообщений: 111
По умолчанию

Цитата:
Сообщение от viter.alex Посмотреть сообщение
Ctrl+H, а дальше разберёшься
С кавычками не разберётся. Если включена дефолтная автозамена знаков, то угловые кавычки будут меняться на такие же. Значит, надо задавать явную замену на ^34.

С кавычками, кстати, всё не так просто. Word пишет так: «Крейсер «Варяг»». А по правилам надо писать так: "Крейсер «Варяг»". Я даже как-то макрос сочинил на эту тему.
garik64 вне форума Ответить с цитированием
Старый 09.12.2009, 12:05   #4
Valyano
Новичок
Джуниор
 
Регистрация: 08.12.2009
Сообщений: 2
По умолчанию

Делать то с этим что?
Valyano вне форума Ответить с цитированием
Старый 09.12.2009, 14:11   #5
garik64
Форумчанин
 
Регистрация: 09.07.2009
Сообщений: 111
По умолчанию

Цитата:
Сообщение от Valyano Посмотреть сообщение
Делать то с этим что?
Волшебные кнопки Ctrl и H, нажатые вместе, откроют окошко "Поиск и замена". Там всё ясно.
garik64 вне форума Ответить с цитированием
Старый 10.12.2009, 13:07   #6
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Цитата:
Сообщение от garik64 Посмотреть сообщение
Word пишет так: «Крейсер «Варяг»». А по правилам надо писать так: "Крейсер «Варяг»". Я даже как-то макрос сочинил на эту тему.
А покажите-ка!
В 1000 раз чаще пишут не «Ресторан «Крейсер «Варяг»»», а просто (ООО) «Ресторан «Крейсер «Варяг»!

Неужели (из последнего) вы получаете "Ресторан «Крейсер „Варяг”»"?
Sasha_Smirnov вне форума Ответить с цитированием
Старый 10.12.2009, 14:47   #7
garik64
Форумчанин
 
Регистрация: 09.07.2009
Сообщений: 111
По умолчанию

Цитата:
Сообщение от Sasha_Smirnov Посмотреть сообщение
А покажите-ка!
В 1000 раз чаще пишут не «Ресторан «Крейсер «Варяг»»», а просто (ООО) «Ресторан «Крейсер «Варяг»!

Неужели (из последнего) вы получаете "Ресторан «Крейсер „Варяг”»"?
Не покажу, потому что это было ещё в девяностые и написано для MultiEdit 6.0, так что даже и не знаю, сохранился ли он где-нибудь. (Поскольку ME был ASCII редактор, там были свои заморочки). А чему Вы удивляетесь? Проверялась чётность кавычек в пределах одного абзаца; если их было чётное количество и больше двух, они менялась попарно. Ну да, Ваш пример так бы и выглядел. Но у меня их просто не было.
garik64 вне форума Ответить с цитированием
Старый 10.12.2009, 15:55   #8
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Ясно, слава мультиэдиту! Сложность-то вся в том, что парность кавычек редко соблюдают.

Цитата:
Сообщение от Valyano Посмотреть сообщение
Здравствуйте! У меня такой вопрос. Есть текст и в нем нужно исправить такие ковычки «...текст...» на такие "...текст..." И знак ; на знак , Заранее благодарен!!!
Код:
Sub mainchanger() 'замены во всём тексте'
Dim dullText$, keenText$

    dullText$ = ActiveDocument.Content.Text 'исходный текст документа'

    keenText$ = Replace(dullText$, ";", ",") 'замена точки с запятой на запятую'    
    keenText$ = Replace(keenText$, "«", """")
    keenText$ = Replace(keenText$, "»", """")
    
                    ActiveDocument.Content.Text = keenText$ 'новый, исправленный текст документа'

End Sub

Последний раз редактировалось Sasha_Smirnov; 11.12.2009 в 15:34. Причина: раскраска.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 24.12.2009, 10:24   #9
Dim777
Новичок
Джуниор
 
Регистрация: 24.12.2009
Сообщений: 2
По умолчанию

Код:
Sub mainchanger() 'замены во всём тексте'
Dim dullText$, keenText$

    dullText$ = ActiveDocument.Content.Text 'исходный текст документа'

    keenText$ = Replace(dullText$, ";", ",") 'замена точки с запятой на запятую'    
    keenText$ = Replace(keenText$, "«", """")
    keenText$ = Replace(keenText$, "»", """")
    
                    ActiveDocument.Content.Text = keenText$ 'новый, исправленный текст документа'

End Sub
[/QUOTE]

Этот макрос сбивает все абзацы в тексте и жирный текст на обычный меняет.
Dim777 вне форума Ответить с цитированием
Старый 25.12.2009, 02:19   #10
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Да, это побочное действие. А иначе макрос был бы посложнее!
Sasha_Smirnov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена знаков сноски (цифр на звездочки) caute Microsoft Office Word 19 27.12.2009 10:34
Замена подстрочных знаков mephist Microsoft Office Word 5 14.09.2009 18:19
замена знаков и букв memka PHP 8 19.04.2009 18:51
Замена кода программы с Delhi5 на Delhi7 либо замена базы данных с Acessa на MySQL DorianLeroy Фриланс 8 18.02.2009 18:52