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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2017, 10:04   #1
Niyetkhan
Пользователь
 
Регистрация: 27.10.2016
Сообщений: 25
По умолчанию Замена текста установкой табуляции

Здравствуйте,

В документе 436 страниц А4. Текст – результат распознавания сканированных страниц книги, в целом устраивает: ошибок практически нет. Нужно создать точную редактируемую копию книги в формате word doc.
Но есть один нюанс: все места в документе, где есть табуляция (заполнитель – точки с выравниванием по правому краю), распознаны не как табуляция с заполнением и установленной позицией, а просто как точки. То есть это могут быть 3, 4, 5 и более точек, идущих подряд без пробелов. Таких многоточий в документе – 392 (определил, когда ввел несколько точек в поле «Найти» и выделив их все диалоговом окне «Поиск и замена»).
Сначала я нахожу эти многоточия, удаляю их. Затем устанавливаю позицию табуляции и заполнение и только потом наживаю клавишу Tab, чтобы добиться правильного позиционирования нужного текста на странице.
Вопрос: можно ли это делать не вручную, заменить макросом?
Страницу из этого документа прилагаю.

Буду признателен за отклики.

С уважением,
Ниетхан
Вложения
Тип файла: docx Скан книги.docx (29.5 Кб, 11 просмотров)
Niyetkhan вне форума Ответить с цитированием
Старый 12.12.2017, 12:10   #2
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,656
По умолчанию

Не хватает примера ВЫХОДНОГО текста.
З.Ы. Форматировать табами текст в ворде разрешено только криворуким дебилам. Для нормальных людей есть стили.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 12.12.2017, 14:29   #3
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

В принципе можно такое замутить. Позиция табуляции фиксированная или меняется в зависимости от количества точек?
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 12.12.2017, 14:31   #4
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Посмотрел файл. Зачем там табуляция? Можно сделать просто отступом поиском и заменой
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 12.12.2017, 19:26   #5
Niyetkhan
Пользователь
 
Регистрация: 27.10.2016
Сообщений: 25
По умолчанию

Позиция табуляции - фиксированная для всего документа - 16 см. . Все позиции табуляции должны быть как первая табуляция на первой странице (вверху).Прилагаю для примера файл
Вложения
Тип файла: doc Деревья и кустарники-1.doc (1.47 Мб, 13 просмотров)
Niyetkhan вне форума Ответить с цитированием
Старый 12.12.2017, 19:30   #6
Niyetkhan
Пользователь
 
Регистрация: 27.10.2016
Сообщений: 25
По умолчанию

Можно заменить отступом, но как заполнить эти отступы точками?
Niyetkhan вне форума Ответить с цитированием
Старый 12.12.2017, 19:36   #7
Niyetkhan
Пользователь
 
Регистрация: 27.10.2016
Сообщений: 25
По умолчанию

Это одна из страниц книги. Нужно, чтобы форматирование в документе Word было максимально приближено к оригиналу.
Изображения
Тип файла: jpg Page_6.jpg (118.4 Кб, 130 просмотров)
Niyetkhan вне форума Ответить с цитированием
Старый 12.12.2017, 19:42   #8
Niyetkhan
Пользователь
 
Регистрация: 27.10.2016
Сообщений: 25
По умолчанию

Нашел один макрос для подобной задачи. Однако он выполняет только одну замену за раз. А мне нужно заменить все многоточия, нужен цикл. Ума не приложу, как этого добиться...

Sub Макрос2()
Selection.TypeText Text:="...."

Selection.ParagraphFormat.TabStops. ClearAll
Selection.ParagraphFormat.TabStops. Add Position:=CentimetersToPoints(15), _
Alignment:=wdAlignTabRight, Leader:=wdTabLeaderDots
Application.Keyboard (1049)
Selection.TypeText Text:=vbTab & vbTab

'
'
Selection.TypeText Text:=vbTab
End Sub
Niyetkhan вне форума Ответить с цитированием
Старый 13.12.2017, 10:48   #9
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Всё можно сделать поиском и заменой с подстановочными знаками:
  1. Найти: \.{2;}. Т.е. 2 и более точек подряд
  2. Заменить на: ^t
  3. Находясь в поле «Заменить на» выбрать Формат→Табуляция и настроить нужную табуляцию.
  4. Заменить всё
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена текста. Nando Microsoft Office Excel 3 20.03.2014 12:48
Замена пробелов на символ табуляции frixer Помощь студентам 0 10.04.2011 20:43
Замена текста Lived08 Microsoft Office Excel 11 28.07.2010 14:20
Замена табуляции на пробел tae1980 Microsoft Office Excel 5 17.03.2009 07:09
замена текста zetrix Microsoft Office Excel 0 31.10.2006 07:54