Comment représenter la valeur numérique « 1 » par « 001 » ?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'ai des milliers de coordonnées X et Y dans deux colonnes différentes et j'aimerais combiner les coordonnées sous forme de valeurs à 6 chiffres dans une seule colonne. Par exemple, combinez (1,1) dans 001001 et combinez (14, 14) dans 014014. Un tableau de données simplifié est joint.
Comment puis-je faire cela en utilisant une formule ou un script ?
Re : Comment représenter la valeur numérique « 1 » par « 001 » ?les fonctions gauche et droite ont un troisième argument pour spécifier une valeur de pad.Fonctions de chaîne de caractères JSL
x=42 ;
droite( char(x), 3, "0");
"042"
soyez prudent, certaines des autres suggestions peuvent être plus robustes si les chiffres sont hors limites, ou peut-être pas, selon ce à quoi vous vous attendez :
x=9876 ;
droite( char(x), 3, "0");
"876"
Re : Comment représenter la valeur numérique « 1 » par « 001 » ?Merci pour la réponse rapide.
Re : Comment représenter la valeur numérique « 1 » par « 001 » ?Merci. Exactement ce que je veux.
Re : Comment représenter la valeur numérique « 1 » par « 001 » ?Vous pouvez utiliser le Répéter() fonction pour compléter la représentation des caractères pour ces coordonnées.
Cela ressemblerait à ceci :

( Répéter ( "0" , 3 - Longueur ( Carboniser ( : X ) ) ) || Carboniser ( : X )) || (
Répéter ( "0" , 3 - Longueur ( Carboniser ( : Oui ) ) ) || Carboniser ( : Oui ))
J'ai joint votre tableau de données avec une nouvelle colonne montrant ceci.
-Jeff
Re : Comment représenter la valeur numérique « 1 » par « 001 » ?En supposant que X et Y ne dépassent jamais trois chiffres, cela devrait fonctionner dans une formule en colonne :
Répéter( "0", 3 - Longueur( Char( :X ) ) ) || Caractère( :X) ||
Répéter( "0", 3 - Longueur( Char( :Y ) ) ) || Char( :Y)
Modifier:
Ou peut-être que c'est plus efficace :
Droite ( Carboniser ( 1e6 + : X * 1e3 + : Oui ) , 6 )