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?


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 à team@superuser.com 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

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


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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.