Bonjour,
Je récupère sur internet des tablatures de guitare lorsqu'elles m'intéressent (paroles et accords)
Je créer un fichier par tab.
Je souhaiterai mettre en forme le texte en mettant en valeur les accords (gras + couleur, bleu par exemple)
La tache est immense sur plusieurs cetaines de fichiers. Je souhaite me simplifier la tache avec une macro, mais hors de ma portée technique.
Je me suis inspiré d'un sujet de ce forum, mais je patine...
Pour chaque accord, il faut que la macro recherche le texte, vérifie que la première lettre est en majuscule (car je suis un peu toqué lol), puis qu'elle mette en forme (cf ci dessus). Attention elle ne dois pas remplacer toutes les occurences puisqu'il se peut qu'une parole contienne les lettres de l'accord.
Je m'explique, par exemple :
tab1 :
em am
Je suis une cruche, percée de plus,
Si bien qu'on doit rechercher pour l'accord em, selon moi, "espace em espace" "espace em tabulation" "espace em retour à la ligne" "tabulation em tabulation" etc etc je vous laisse deviner les possibilités.
J'ai commencé par cela mais je pense être loin du compte:
Il ne me remplace que les am ... (avec un espace avant et après)...
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 Sub GuitareMEF() Dim newNameem As String Dim oldNameem As String oldNameem = " em " newNameem = " Em " Dim newNameam As String Dim oldNameam As String oldNameam = " am " newNameam = " Am " ActiveDocument.Range.Select With Selection.Find .Text = oldNameem .Replacement.Text = newNameem .Forward = True .ClearFormatting .Wrap = wdFindContinue Selection.Font.Bold = wdToggle End With ActiveDocument.Range.Select With Selection.Find .Text = oldNameam .Replacement.Text = newNameam .Forward = True .ClearFormatting .Wrap = wdFindContinue Selection.Font.Bold = wdToggle .Execute Replace:=wdReplaceAll End With End Sub
Peut être auriez vous des fonctions vba pouvant me faciliter la tache.
Merci d'avance
Partager