Renverser la lecture de chiffres

Fermé
Starbukk - 15 févr. 2013 à 14:58
via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 - 15 févr. 2013 à 15:15
Bonjour,

Je cherche à renverser la lecture de nombres composés de 0, 1, 6, 8 et 9.
Par exemple, 16908 se lirait 80691 (et réciproquement), comme si mettait la tête en bas.
Quelques particularités : 1 se lirait 10 à l'envers, de même que 6 se lirait 90, 8 -> 80 et 9 -> 60.

Si vous avez des bouts de macros pour récupérer le nième d'une chaîne, ou pour parcourir une plage de cellules, je suis preneur et vous remercie d'avance.



1 réponse

via55 Messages postés 14408 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 5 mai 2024 2 704
15 févr. 2013 à 15:15
Bonjour

Si j'ai bien compris ta problematique le code suivant lit le nombre en A1 et renvoie l'"inverse" en B1

Sub inverser()
a = Cells(1, 1).Value
lm = Len(a)
inverse = ""
For n = lm To 1 Step -1
x = Mid(a, n, 1)
Select Case x
Case "6": r = "90"
Case "8": r = "80"
Case "1": r = "10"
Case "9": r = "60"
Case "0": r = "0"
End Select
inverse = inverse + r
Next n
Cells(1, 2).Value = inverse
End Sub

Est ce bien l'effet recherché ?

Cordialement
0