Comment codifier un nombre ?

  • Initiateur de la discussion Initiateur de la discussion ChicKo
  • Date de début Date de début

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 !

C

ChicKo

Guest
Bonjour tout le monde,

Je recherche une formule pour pouvoir codifier une cellule contenant un nombre.
J'ai déjà rechercher sur le net, mais j'ai rien trouver.
Je viens donc ici vous le demander.

J'aimerais donc codifier de la manière suivante :
1 = A ; 2 = Z ; 3 = E ; 4 = R ; 5 = T ; 6 = Y ; 7 = U ; 8 = I ; 9 = O ; 0 = P

J'ai une cellule qui contient par exemple 15,42
Je veux donc insérer une formule dans une autre cellule pour qu'il soit écrit AT,RZ

Voila,
Merci
 
Re : Comment codifier un nombre ?

Bonjour,

Avec Excel 2007, en une seule formule :

Code:
=SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(
SUBSTITUE(SUBSTITUE(SUBSTITUE(C2;"1";"A");"2";"Z");"3";"E");"4";"R");"5";"T");
"6";"Y");"7";"U");"8";"I");"9";"O");"0";"P")

Avec les versions antérieures, il faudra décomposer en 2 formules

@+
 
Re : Comment codifier un nombre ?

bonjour

n'ayant pas 2007, j'ai du créer une fonction:

Code:
Function convertir(entre As String)
Dim i As Integer, res As String
  res = entre
  For i = 0 To 9
    res = Replace(res, CStr(i), Chr(Asc("A") + i))
  Next i
  convertir = res
End Function
 
Re : Comment codifier un nombre ?

Bonjour à tous,

tbft j'ai testé ta fonction par curiosité et franchement pas mal du tout, je n'y avais pas pensé. (Moi je me fait à chaque fois un liste avec les correspondances pour la traduction Excel et VBA ).

Bravo pour ta fonction, par contre juste une remarque qui me derange, 1 = B , 2 = C, etc... c'est décalé avec que 1 = A.

JP
 
Re : Comment codifier un nombre ?

Bonjour à tous,

Voici une solution simple pour le codage, en utilisant Array :

Code:
Public Function Coder(Nombre As String) As String
Dim tablo As Variant, i As Integer
tablo = Array("P", "A", "Z", "E", "R", "T", "Y", "U", "I", "O")
Coder = ""
For i = 1 To Len(Nombre)
Coder = Coder & IIf(IsNumeric(Mid(Nombre, i, 1)), tablo(Val(Mid(Nombre, i, 1))), Mid(Nombre, i, 1))
Next
End Function

A+
 
Re : Comment codifier un nombre ?

Re,

Voici la fonction de décodage, qui utilise le même tableau et Application.Match :

Code:
Public Function Decoder(Texte As String) As Variant
Dim tablo As Variant, i As Integer, x As Variant
tablo = Array("P", "A", "Z", "E", "R", "T", "Y", "U", "I", "O")
Decoder = ""
For i = 1 To Len(Texte)
x = Application.Match(Mid(Texte, i, 1), tablo, 0)
If IsNumeric(x) Then x = x - 1 Else x = Mid(Texte, i, 1)
Decoder = Decoder & x
Next
If IsNumeric(Decoder) Then Decoder = CDbl(Decoder)
End Function

Fichier joint.

A+
 

Pièces jointes

Dernière édition:
Re : Comment codifier un nombre ?

Bonsoir le fil, le forum,

Mais pourquoi aller chercher midi à 14 heures :

Code:
Function Coder(Nombre As String) As String
Dim tablo As Variant, i As Byte
tablo = Array("P", "A", "Z", "E", "R", "T", "Y", "U", "I", "O")
For i = 0 To 9
Nombre = Replace(Nombre, i, tablo(i))
Next
Coder = Nombre
End Function

Function Decoder(Texte As String) As Variant
Dim tablo As Variant, i As Byte
tablo = Array("P", "A", "Z", "E", "R", "T", "Y", "U", "I", "O")
For i = 0 To 9
Texte = Replace(Texte, tablo(i), i)
Next
If IsNumeric(Texte) Then Decoder = CDbl(Texte) Else Decoder = Texte
End Function

A+
 

Pièces jointes

Dernière édition:
Re : Comment codifier un nombre ?

Félicitations Job pour ces 2 fonctions.

Pour le fun ou la joda si tu préfères, je me suis permis de rajouter d'autres fonctions (qui ne sont pas de moi) pour davantage confondre les pélerins trop curieux....

Ma foi, ces fonctions pourront peut-être amuser certains.

Buenas noches.
 

Pièces jointes

- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
442
Réponses
11
Affichages
736
Retour