Comment copier des codes de champs Microsoft Word bruts dans un autre document texte?

0

Est-il possible de copier du texte à partir d'un document Word contenant des codes de champ, de sorte que les codes de champ, une fois installés dans une autre application, restent en tant que texte brut c'est-à-dire quelque chose comme

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

plutôt que d'avoir les codes de champ supprimés?

Faye Dyce
la source
Peut-être que je ne l'ai pas expliqué très clairement. Je ne veux pas couper et coller les codes de champs individuels un à un, mais plutôt le corps du texte du document entier avec les codes de champs conservés intacts ...
Faye Dyce
vous avez réussi à créer deux comptes. Envoyez un e-mail à [email protected] pour les fusionner.
ChrisF

Réponses:

0

Ajouter une macro au document, sélectionner du texte, exécuter une macro. Vous pouvez maintenant copier les codes de champs dans le Presse-papiers.

Ps. dans office 2010, ALT + F9 est utilisé pour afficher les codes de champs.

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
integratorIT
la source
pour que ce code soit exécuté, vous devez ajouter la référence Microsoft Forms 2.0 à la macro. Il se trouve c: \ windows \ system32 \ FM20.dll. Malheureusement, même si le code copie le texte représentant le code de champ, toute la mise en forme est perdue lors de la copie. Lorsque vous collez à nouveau, il ne s'agit que de texte.
TWood
0

presse Alt + F9 pour afficher le code de champ, puis mettez en surbrillance tout le texte entre les accolades {}. Vous pouvez ils copier et coller ce texte.

Voici un lien vers une macro que quelqu'un a écrit pour faire tout le travail: Copier et coller des codes de champ

WireGuy
la source
Dans Office 2010, son ALT + F9 ne peut pas vérifier pour le moment que c'est la même chose dans les versions précédentes.
integratorIT