Как избавиться от пробелов, введенных при прямом форматировании документа в слове

2

Итак, я понимаю, что есть два способа форматирования в слове: прямое форматирование, когда вы выбираете текст, выбираете шрифт, размер, цвет, выравнивание и т. Д. Другое - это форматирование на основе стиля, когда вы выбираете текст, и если вы найти подходящий стиль, а затем просто применить этот стиль. Я преобразую неверный непоследовательный документ прямого формата в согласованный форматированный документ в Word 2007.

В заголовках есть пробелы, введенные слева, чтобы выровнять текст немного вправо. Скажем, я хочу избавиться от этих ручных пробелов и применить существующий стиль заголовка 3. Когда я это делаю, я вижу, как шрифт / цвет / размер меняются в соответствии со стилем, но пробелы остаются такими же. Я хочу, чтобы эти места ушли, и заголовок начинался слева.

Что я должен делать?

p2pnode
источник

Ответы:

2

Вам придется удалить пробелы, так как это простые символы, а не форматирование.

Вы можете написать макрос для преобразования, который может обрезать заголовок и преобразовать стиль. Что касается деталей того, как это сделать, я бы написал первый макрос, записав шаги. Вероятно, в соответствии с:

  1. Начните с строки заголовка, которая должна обрезать оба конца
  2. Начать запись макроса
  3. Перейти к началу строки
  4. Выберите пробелы с ключами
  5. Удалить пробелы
  6. Выберите новый стиль
  7. конец записи
  8. Редактировать макрос для удаления абсолютных ссылок

Теперь я подозреваю, что есть лучший способ, поскольку изменение текста может быть выполнено с помощью функции обрезки, но мои знания Word VBA ограничены, и я всегда начинаю с записанного макроса.

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

отметка
источник
Можете ли вы опубликовать, как написать этот макрос. Я сделал бы это на Vim / gVim, но он потерял бы некоторое форматирование, потому что Vim обрабатывает только простой текст. Этот вопрос вызвал у меня интерес, так как иногда мне нужно вносить большие изменения в Word, и это в конечном итоге порождает много боли.
Джонни
0

После установки стилей вы можете удалить все конечные пробелы в начале абзацев, выполнив операцию поиска и замены. Если вы замените ^ p ^ w на ^ p, это поможет. (^ p означает знак абзаца, ^ w означает пробел)

Обратите внимание, что при этом удаляются все конечные пробелы, включая вкладки, из всех абзацев: поэтому, если у вас есть другие строки, которые вы хотите начать с пробелов, это не поможет.

Biglig
источник
0

Вы также можете искать форматированный текст, по крайней мере, в Word 2010/11 (извините, нет 07/08 под рукой). Попробуйте объединить это с регулярным выражением.

Сначала измените все заголовки на стиль 3 уровня. Затем примените поиск по регулярным выражениям Биглига или, скорее, «^ p {1,4}», отформатированный как «уровень 3» - «», не запрещены в регулярных выражениях. Это должно работать, если Word не удастся изменить заголовки с помощью предыдущего абзаца.

Я не уверен, видите ли вы один пробел или несколько. Если заголовки последовательно начинаются, скажем, с 3 или 4 пробелов, и они являются единственными абзацами с этим «ручным стилем», вы можете попытаться найти «^ p {1,4}», а затем применить абзац «заголовок 3 уровня» стиль к тексту.

thyx
источник