Masquer une partie des caractères d'une même cellule

Signaler
-
Messages postés
23888
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 février 2021
-
Bonjour,

Quel serait le moyen de personnaliser l'affichage d'une cellule pour MASQUER une partie des caractères d'une cellule ? Exemple, ma cellule affiche 202107, je voudrais ne faire apparaitre que les 2 dernier chiffres, soit 07. Je parle bien d'affichage car je souhaite que ma cellule ait pour valeur tous les chiffres quand même. Des idées ?
Merci !

4 réponses

Messages postés
15600
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
23 février 2021
1 460
Bonjour,

Pour une cellule de saisie, ne peut ce faire qu'avec du texte.
Donc code pour faire ce coloriage:

A mettre dans le VBA de la feuille et adaptez la plage de cellule

Private Sub Worksheet_Change(ByVal Target As Range)
    With Application.ErrorCheckingOptions
        .EvaluateToError = False
        .TextDate = False
        .NumberAsText = False
    End With

    If Target.Count > 1 Then Exit Sub
    If Not Application.Intersect(Target, Range("D2:D12")) Is Nothing Then
        With Target
            .NumberFormat = "@"
            NbC = Len(Target)
            If NbC < 3 Then
                .Characters(Start:=1, Length:=NbC).Font.ColorIndex = xlAutomatic
            Else
                Lng = NbC - 1
                .Characters(1, Lng).Font.Color = vbWhite
                .Characters(Start:=Lng, Length:=2).Font.ColorIndex = xlAutomatic
            End If
            .HorizontalAlignment = xlRight
        End With
    End If
End Sub
Messages postés
53310
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 février 2021
15 337
Bonjour.

Il n'y a pas de solution pour ta demande.
Messages postés
15600
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
23 février 2021
1 460
Bonjour,

Ca roule?

Y a une solution en convertissant les nombres en texte voir code post <1>
Messages postés
53310
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 février 2021
15 337
Non !
bassreflex a bien précisé :
"Je parle bien d'affichage car je souhaite que ma cellule ait pour valeur tous les chiffres quand même" ...
Messages postés
23888
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 février 2021
6 662
Bonjour,

Pourquoi être péremptoire ?
J'ai bien l'impression que la proposition de f894009 répond à la question.
Excel saura convertir en numérique si besoin. Attendons le demandeur...
eric
Messages postés
53310
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
23 février 2021
15 337
Cher ami Eric, je ne suis pas du tout péremptoire : Je rappelle juste le libellé de la demande ...
Il est question de chiffres et de valeur ; c'est donc que la cellule servira à des calculs sur le mois de juillet 2021, et même l'utilisation de CNUM("07") serait source d'erreur !
Cordialement.
Messages postés
23888
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 février 2021
6 662
Je ne vois pas ce que tu veux dire.
Met A2 au format texte avec 1234 dedans.
Avec
=A2+1
qu'obtiens-tu ?
De même =SOMME(A2:A3) fonctionne

Quant à =CNUM("07") ça me donne 7 sans erreur... Mais pourquoi vouloir l'utiliser alors qu'excel fait ses conversions tout seul comme un grand ?

eric