Les codes de champs peuvent être très utiles dans un document. À un moment donné, vous souhaiterez peut-être partager un code de champ avec quelqu’un. Peut-être que vous préparez un document de formation qui doit afficher les codes sous forme de texte ou que vous souhaitez envoyer le code de champ par courrier électronique à quelqu’un d’autre.

Le problème est que si vous copiez et collez simplement le code de champ, ce n’est pas le code réel qui est collé; c’est le résultat de ce code de champ. Vous pouvez, bien sûr, afficher le code de champ (Maj + F9), positionner le point d’insertion entre les accolades, sélectionner soigneusement tous les caractères sauf l’accolade fermante, puis copier dans le Presse-papiers.

Cette approche peut cependant devenir fastidieuse dans la grande hâte. Une meilleure approche consiste à utiliser une macro pour afficher le code de champ et insérer les informations souhaitées dans le Presse-papiers. La macro suivante fait exactement cela:

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

La macro commence par désactiver la mise à jour de l’écran, puis elle vérifie que la sélection ne comprend qu’un seul champ. (Vous devez sélectionner le champ de votre choix avant d’exécuter la macro.) S’il contient un seul champ, le code de champ de ce champ est affiché, affecté à une variable (sField), puis sélectionné caractère par caractère. Si le caractère examiné est l’accolade ouvrante de champ – Chr (19) – alors il est remplacé par une accolade ouvrante normale. S’il s’agit d’une accolade de champ fermante – Chr (21) – elle est alors remplacée par une accolade fermante normale. Enfin, si le caractère est un marqueur de fin de paragraphe (vbCr), alors le caractère est ignoré.

Enfin, la méthode PutInClipboard est utilisée pour insérer la version texte du code de champ dans le Presse-papiers. Vous pouvez ensuite utiliser une commande de collage standard (Ctrl + V) pour coller le code de champ dans un document, un e-mail ou un autre programme.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

WordTips est votre source pour une formation Microsoft Word rentable.

(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (3844) s’applique à Microsoft Word 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban de Word (Word 2007 et plus tard) ici:

link: / wordribbon-Copying_and_Pasting_Field_Codes [Copier et coller des codes de champ].