IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Eric KERGRESSE

WORD - Transformer un groupe de mots en lien hypertexte

Noter ce billet
par , 20/04/2021 à 16h44 (142 Affichages)
-

Définition :

Un groupe de mots, c'est un ensemble de caractères encadré par deux caractères blancs ou par un caractère blanc et un changement de paragraphe. Pour sélectionner un groupe de mots dans un texte Word, on a la possibilité d'utiliser un signet. Cela se complique si celui-ci n'existe pas. L'idée serait donc de pouvoir sélectionner tout un groupe de mots quelque soit la position du curseur dans ce groupe.

But de la macro :
Transformer le groupe de mots en lien hypertexte sans sélectionner l'ensemble de la chaine, juste à partir de la sélection en cours.


Code de la macro :

Dans l'exemple ci-dessous, l'idée serait de transformer la chaine mon.nom.tomate@compagnie.com en lien hypertexte. La sélection en cours se situe par exemple entre le o et le m du mot tomate.

Nom : Capture.JPG
Affichages : 16
Taille : 17,1 Ko

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Sub SelectionnerUnGroupeDeMots()

Dim I As Long, PositionRepere As Long, PositionMot As Long
Dim MonRange As Range, RangeDepart As Range, RangeFin As Range
Dim Continuer As Boolean
    
    Selection.HomeKey unit:=wdStory, Extend:=wdExtend
    PositionMot = Selection.Words.Count
    ActiveDocument.Words(PositionMot).Select
    Selection.MoveLeft unit:=wdWord
    PositionRepere = Selection.Characters.Count + 1
    Set MonRange = Selection.Range
    MonRange.Select
    
    Continuer = True
    With Selection
         Do While Continuer = True
            Selection.MoveLeft unit:=wdCharacter, Count:=1
            Select Case Selection.Characters(1).Text
                   Case Chr(32), Chr(160), Chr(13)
                        Continuer = False
                   Case Else
                        Set RangeDepart = Selection.Range
            End Select
         Loop
         Selection.MoveRight unit:=wdCharacter, Count:=1
         Set RangeDepart = Selection.Range
    End With
   
    MonRange.Select
   
    Continuer = True
    With Selection
         Do While Continuer = True
            Selection.MoveRight unit:=wdCharacter, Count:=1
            Select Case Selection.Characters(1).Text
                    Case Chr(32), Chr(160), Chr(13)
                         Continuer = False
                    Case Else
                         Set RangeFin = Selection.Range
            End Select
         Loop
         Selection.MoveRight unit:=wdCharacter, Count:=1
         Set RangeFin = Selection.Range
    
    End With
    
    Set MonRange = ActiveDocument.Range(Start:=RangeDepart.Start, End:=RangeFin.End)
    'Debug.Print "Start : " & RangeDepart.Start & ", End : " & RangeFin.End & ", contenu : " & MonRange.Text
    MonRange.Select
    With MonRange.Font
         .ColorIndex = 2
         .Size = 10
         .Name = "Calibri"
    End With
    ActiveDocument.Hyperlinks.Add Anchor:=MonRange, Address:= _
    "mailto:" & Selection.Range, SubAddress:="", ScreenTip:="", TextToDisplay:=Selection.Range.Text

    Set MonRange = Nothing: Set RangeDepart = Nothing: Set RangeFin = Nothing
    
End Sub
Après macro :
Nom : Capture.JPG
Affichages : 10
Taille : 16,1 Ko

Lancement de la macro :

Le lancement de la macro peut se faire depuis la barre d'accès rapide comme ici avec le bouton rouge.
Le mode opératoire est ici : Word-demarrer-macro-associee-document-barre-dacces-rapide

Nom : Capture.JPG
Affichages : 11
Taille : 16,0 Ko

Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Viadeo Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Twitter Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Google Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Facebook Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Digg Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Delicious Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog MySpace Envoyer le billet « WORD - Transformer un groupe de mots en lien hypertexte » dans le blog Yahoo

Commentaires