Passer un nombre à 2 ou 3 chiffres à un nombre 4 chiffres

Bonjour à tous,

Je me suis lancé sur Excel VBA depuis maintenant un mois et je redécouvre le plaisir perdu de créer des algorithmes .

Mais voilà que je bute sur quelque chose qui me pârait tout simple :

J'ai une base de données comportant une colonne de nombres de la forme suivante [c] ou [c c] ou [c c c ] (c pour chiffre : 0 à 9).

J'aimerais transformé ces nombres sous les formats respectifs suivants : [0 0 0 c] ou [0 0 c c] ou [0 c c c].

L'algorithme que je vais utiliser est le plus évident :

on pose nbChiffres = taille( nombre )

Cas nbChiffres = 1

nombre = "000" & nombre

Cas nbChiffres = 2

nombre = "00" & nombre

Cas nbChiffres = 3

nombre = "0" & nombre

Mon problème est que je ne trouve pas la fonction pour trouver la taille d'une chaîne (je suis sur qu'elle doit exister )

Une petite question supplémentaire : existe-t'il une fonction qui réaliserait directement ce que je veux?

Autrement dit combler de 0 mon nombre jusqu'à ce que sa taille atteigne 4.

Merci d'avance

Uras

Bonjour,

pas sûr d'avoir tout compris, peut être avec un format personnalisé de cellule :

0000

bonne journée

@+

Bonjour,

Sinon on veut une chaîne de caractères (du texte) :

Formule = TEXTE(valeur;"0000")

Avec une fonction personnalisée :

Option Explicit
Public Function Conversion(valeur) As String
    If valeur = Empty Or Not IsNumeric(valeur) Then Exit Function
    Conversion = Format(valeur, "0000")
End Function

Re,

Conversion = Format(valeur, "0000")

Je viens de l'adapter pour mon code, ça fonctionne à merveille!

Merci beaucoup Pierrot93 et Jean-Eric !

Problème résolu

Uras

Ajout : Tant que j'y pense, une fonction donne directement la taille d'une chaîne de caractères? si oui laquelle?

bonjour,

la fonction len("chaine")

Merci beaucoup Vitriol

Uras

Rechercher des sujets similaires à "passer nombre chiffres"