Code VBA pour changer la taille de la police en fonction d'un texte

Exemple avec test dans la cellule C14 et modification en E14 si modification dans la zone " plage_modif "

A mettre dans le module de la feuille concernée et créer une plage de cellules nommée " plage_modif "

* * * CODE ci-dessous * * *

Private Sub Worksheet_Change(ByVal Target As Range)

'Plage de modification correspondant à une zone " plage_modif " de la feuille de calcul

'si une modification est faite dans la zone " plage_modif alors la police de caractère est

'modifiée en $E$14 en fonction de la valeur $C$14

On Error GoTo Erreurs ' gestion des erreurs : s'il y a une erreur, il faut remettre en service

'le contrôle des événements

'---------------Ci-dessous option pour voir la valeur à tester----------------

' --------------ces lignes peuvent être supprimées---------------

' ci-dessous, juste un message pour afficher la valeur de $C$14 si une modification

' est faite dans la zone plage_modif

If Not Intersect(Target, Range("plage_modif")) Is Nothing Then

momo = MsgBox("Le contenu de la cellule $C$14 a pour valeur : " & Range("$C$14").Value, vbInformation, "Valeur qu'il faut tester, sur modification d'une cellule, dans la zonne plage_modif")

End If

'------------------Fin de la zone optionnelle-------------

'

'ci-dessous code utile à réaliser la fonction

'dans le cas où la valeur à tester est issue d'une formule il faut passer

'par une variable intermédiaire, ici " valeur_a_tester "

'

If Not Intersect(Target, Range("plage_modif")) Is Nothing Then

Application.EnableEvents = False ' inhibition du contrôle des événement le temps de traitements du test

' test

valeur_a_tester = Range("$C$14").Value

If valeur_a_tester = "Paris" Then

Range("E14").Font.Size = 10

ElseIf valeur_a_tester = "Marseille" Then

Range("E14").Font.Size = 12

ElseIf valeur_a_tester = "Toulouse" Then

Range("E14").Font.Size = 14

ElseIf valeur_a_tester = "Bordeaux" Then

Range("E14").Font.Size = 16

ElseIf valeur_a_tester = "Montpellier" Then

Range("E14").Font.Size = 18

ElseIf valeur_a_tester = "Paris" Then

Range("E14").Font.Size = 120

End If

End If

Application.EnableEvents = True ' remise en service du contrôle des événements

'

Erreurs:

If Err <> 0 Then Application.EnableEvents = True ' remise en service du contrôle des événements en cas d'erreur

End Sub

Rechercher des sujets similaires à "code vba changer taille police fonction texte"