Можно ли скопировать текст из документа Word, содержащего коды полей, чтобы при вставке в другое приложение ПОЛЕВЫЕ КОДЫ ОСТАЮТСЯ КАК RAW-ТЕКСТ. то есть что-то вроде

This is about whales { XE "Cetations:Whales" }. This is about dolphins { XE "Cetations:Dolphins" }.

вместо того, чтобы удалить коды полей?

2 ответа2

0

Нажмите Alt+F9, чтобы отобразить код поля, затем выделите весь текст внутри фигурных скобок {}. Вы можете скопировать и вставить этот текст.

Вот ссылка на макрос, который кто-то написал для выполнения всей работы: Копирование и вставка кодов полей

0

Добавить макрос в документ, выбрать текст, запустить макрос, Теперь вы можете копировать коды полей в буфер обмена.

Ps. в офисе 2010 ALT+F9 используется для отображения полей кодов.

Sub StuffFieldCode()
    Dim sField As String
    Dim sTextCode As String
    Dim bSFC As Boolean
    Dim MyData As DataObject
    Dim sTemp As String
    Dim J As Integer

    Application.ScreenUpdating = False

    If Selection.Fields.Count = 1 Then
        bSFC = Selection.Fields.Item(1).ShowCodes
        Selection.Fields.Item(1).ShowCodes = True
        sField = Selection.Text
        sTextCode = ""
        For J = 1 To Len(sField)
            sTemp = Mid(sField, J, 1)
            Select Case sTemp
                Case Chr(19)
                    sTemp = "{"
                Case Chr(21)
                    sTemp = "}"
                Case vbCr
                    sTemp = ""
            End Select
            sTextCode = sTextCode & sTemp
        Next J

        Set MyData = New DataObject
        MyData.SetText sTextCode
        MyData.PutInClipboard

        Selection.Fields.Item(1).ShowCodes = bSFC
    End If

    Application.ScreenUpdating = True
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .