У Анджелы есть документ, в котором около 400 текстовых полей, и каждое текстовое поле содержит текст. Она задается вопросом, есть ли способ удалить текстовые поля, но оставить текст в документе.

Это можно сделать вручную, просто выделив текст в текстовом поле (не выбирая само текстовое поле), нажав Ctrl + C, чтобы скопировать текст, щелкнув то место, куда вы хотите поместить текст, нажав Ctrl + V, а затем удалив текстовое поле. Однако это быстро станет утомительным, если вы имеете дело с таким же количеством текстовых полей, как у Анджелы.

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

Sub ConvertTextboxText()

Dim shp As Shape     Dim oRngAnchor As Range     Dim sTemp As String     Dim J As Long

For J = ActiveDocument.Shapes.Count To 1 Step -1         Set shp = ActiveDocument.Shapes(J)

If shp.Type = msoTextBox Then             sTemp = shp.TextFrame.TextRange.Text             If Len(sTemp) > 1 Then                 Set oRngAnchor = shp.Anchor.Paragraphs(1).Range                 sTemp = Left(sTemp, Len(sTemp) - 1)

oRngAnchor.InsertBefore "[[ " & sTemp & " ]]"

End If             shp.Delete         End If     Next J End Sub

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

Кроме того, этот текст заключен в [[двойные скобки]], чтобы вы могли легко определить, где находится текст. Поскольку текстовые поля иногда могут быть привязаны далеко от того места, где они появляются в документе, вам определенно захочется найти эти фрагменты текста в двойных скобках и переместить их туда, где вы хотите, чтобы они наконец расположились.

Если вы ищете другие способы решения той же задачи, вам может быть интересна эта веб-страница:

https://www.datanumen.com/blogs/2-quick-methods-extract-texts-text-boxes-word-document/

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (7739) относится к Microsoft Word 2007, 2010, 2013, 2016, 2019 и Word в Office 365.