Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Code evenementiel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

anthoYS

XLDnaute Barbatruc
Bonjour,

Je souhaite en réalité alterner une ligne sur deux ou si je souligne le dernier caractère sur la ligne dite "1" et de la première colonne (E), sur cette même ligne en (J), le dernier caractère qui sera saisi devra adapter le même formalisme, c'est-à-dire se souligner automatiquement. Pareil pour la ligne dite "2", ou là il s'agit d'un double-soulignement.

Ce sujet va dans le droit fil de celui que j'ai ouvert hier, https://www.excel-downloads.com/threads/caractere-en-couleur-selon-condition.110160/

Alors, je ne sais pas si un code évenementiel suffira,ou s'il faut insérer une macro.

A vous de me le dire, car je n'en ai aucune idée,

merci.
 

Pièces jointes

Re : Code evenementiel

Bonjour,

modifie ton code comme ceci :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If Not Intersect(Target, Union(Columns(5), Columns(10))) Is Nothing Then
        If Len(Target) > 0 Then
            Select Case Target.Column
                Case 10
                    If Right(Target, 1) = 9 Then _
                        Target.Characters(Len(Target), 1).Font.ColorIndex = 42
                Case 5
                    If Target.Row Mod 6 = 0 And Right(Target, 1) = "K" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If (Target.Row + 2) Mod 6 = 0 And Right(Target, 1) = "e" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleDouble Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleDouble
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleSingle Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleSingle
            End Select
        End If
    End If
End If
End Sub
 
Re : Code evenementiel

Autre précision s'il te plaît, comment rajouter un nombre avec le "9",
c'est à dire ou le carré "²". Est-ce possible. Savoir, le nombre "2" en exposant en plus du 9.
Ceci n'est pas valable?

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If Not Intersect(Target, Union(Columns(5), Columns(10))) Is Nothing Then
        If Len(Target) > 0 Then
            Select Case Target.Column
                Case 10
                    If Right(Target, 1) = 9 Then _
                   [COLOR="White"] Or Right(Target, 1) = ² Then _[/COLOR]
                        Target.Characters(Len(Target), 1).Font.ColorIndex = 42
                Case 5
                    If Target.Row Mod 6 = 0 And Right(Target, 1) = "K" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If (Target.Row + 2) Mod 6 = 0 And Right(Target, 1) = "e" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleDouble Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleDouble
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleSingle Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleSingle
            End Select
        End If
    End If
End If
End Sub
 
Re : Code evenementiel

Re,

Navré j'ai un souci,

"Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des
classeurs sans macro :
Projet VB
Pour enregistrer un fichier avec ces fonctionnalités, cliquez sur non, puis
sélectionnez un type de fichier prenant en charge les ma ros dans la liste
Type de fichier.
Pour continuer à enregistrer en tant que classeur sans macro, cliquez sur oui."

Si je réponds Non, on boucle sans fin.

Que faire.

En outre quel est le but d'enregistrer une macro, comment faire, pendant l'enregistrement fin, et à quoi sert le raccourci créer?

Je m'y perd, merci encore.
 
Dernière édition:
Re : Code evenementiel

Re,

Dans les options de sécurités des macros, Sélectionne la 2 ème option :
"Désactiver toutes les macros avec notifications"

Mes codes ne sont pas signés numériquement pour ce forum....

A l'ouverture, tu auras un message, en haut, au dessus des lettres de colonne

Tu cliques sur options, et tu actives....
 
Re : Code evenementiel

Re bonjour à tous,

Le présent code à révélé des insuffisances qui doivent êtres comblés par le biais de modifications du présent code :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count = 1 Then
    If Not Intersect(Target, Union(Columns(5), Columns(10))) Is Nothing Then
        If Len(Target) > 0 Then
            Select Case Target.Column
                Case 10
                    If Right(Target, 1) = 9 Then _
                        Target.Characters(Len(Target), 1).Font.ColorIndex = 42
                Case 5
                    If Target.Row Mod 6 = 0 And Right(Target, 1) = "K" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If (Target.Row + 2) Mod 6 = 0 And Right(Target, 1) = "e" Then _
                        Target.Characters(5, 1).Font.ColorIndex = 42
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleDouble Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleDouble
                    If Target.Characters(5, 1).Font.Underline = _
                        xlUnderlineStyleSingle Then _
                        Target.Offset(0, 5).Characters(Len(Target.Offset(0, 5)), 1).Font.Underline = _
                        xlUnderlineStyleSingle
            End Select
        End If
    End If
End If
End Sub

Voir le fichier suivant qui présente les insuffisances du présent code, ainsi que les résultats souhaités en fonction de la saisi sur un seul et même onglet.

Merci à vous par avance et n'hésitez pas à me poser des questions constructives,

à bientôt, je vous attends!
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
1 K
  • Résolu(e)
Microsoft 365 Macro VBA
Réponses
16
Affichages
3 K
Réponses
6
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…