XL 2010 format de cellule Numero de téléphone

lulu42

XLDnaute Nouveau
Bonjour à tous j'espère que vous allez bien moi j'ai le souci suivant: j'ai une liste de num de tél au format 04 77 00 00 00 ou 06 01 01 01 00 10 chiffres norme française . je mets format de cellule num de tél et j'ai par exemple pour un numero 04 77 77 77 77 il affiche ceci 4 77 77 77,77 9 chiffres et la virgule!!! dans option j'ai 2 décimales fixes pour les calculs
merci de votre aide
 

Dranreb

XLDnaute Barbatruc
Excel ne connait que 7 types de données: Boolean, Currency, Date, Double, String, Error et Empty.
Et encore Currency et Date ne sont que des type de restitution de données réellement stockées en Double.
Lorsqu'on voit un numéro de téléphone dans une cellule, on ne peut pas savoir si c'est un String qui est comme ça, ou si c'est un Double soumis à un format de cellule Spécial, Numéro de téléphone, Français. À noter qu'un tel format n'est pas appliqué si la valeur de la cellule et de type String, c'est à dire si elle contient un texte. Je ne puis vous en dire plus, faute de savoir ce que vous avez réellement.
 

Dranreb

XLDnaute Barbatruc
Bonsoir @job75
Oui, c'est exactement cela. En fait tout ce qui est numérique est stocké en Double dans les cellules.
Dans des variables et tableaux VBA c'est complètement différent, bien sûr.
VB:
Sub Test()
   ActiveSheet.[A1].Value = CByte("123")
   MsgBox TypeName(ActiveSheet.[A1].Value)
   End Sub
affiche "Double"
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour à tous,

Excel ne connait que 7 types de données: Boolean, Currency, Date, Double, String, Error et Empty
@Dranreb, :)

Juste pour ma gouverne...

Il me manque une confirmation (ou pas).

Pour moi, dans une cellule, quand on met un nombre, c'est un nombre.
Ensuite, on indique un format (ou bien excel tente d'interpréter le format à la saisie). C'est ce format qui indique à Excel comment il doit manipuler ce nombre (comme étant un nombre de currency, date, double ou autre) et Excel par une alchimie en arrière-plan en tire les conséquences. A mon avis, c'est bien ce qui rend certaines conversion délicates (des dates format US importées qui sont considérées soit en date soit en texte - donc deux types différents - ou bien des retours de tableaux VBA vers Excel qui oblige à d'abord formater les cellules).

Entre Excel qui "type et convertit implicitement" à sa façon et VBA qui "type et convertit implicitement" à sa façon, on a quelquefois des résultats surprenants si on n'y prête pas attention.

Dis-je des grosses bêtises?
 

Dranreb

XLDnaute Barbatruc
Bonjour @mapomme
Pas de grosse bêtise. Le format indique essentiellement comment doit être affichée la valeur si elle est du type de donnée qui en relève. Il peut cependant avoir une incidence sur deux autres points:
1 — La façon dont est interprété un texte tapé de telle sorte que la valeur relève de ce format si possible.
2 — Le type de donnée en lequel est déguisé sa propriété .Value restituée si c'est un Double, pouvant être selon le cas Currency ou Date au lieu de Double.
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour à tous,

Ne pas oublier le problème posé par lulu42 :
pour un numero 04 77 77 77 77 il affiche ceci 4 77 77 77,77 9 chiffres et la virgule!!! dans option j'ai 2 décimales fixes pour les calculs
Effectivement l'option Décimale fixe s'applique aussi aux numéros de téléphone.

Il faut donc décocher cette option avant d'entrer des nombres (menu Fichier-Options-Options avancées).

A+
 

Dranreb

XLDnaute Barbatruc
C'est en effet un peu étonnant, mais après tout, c'est dans la rubrique Options d'édition, et il semblerait que ça ne touche que les nombres tapés sans virgule, auxquels il assume alors à droite le nombre de décimales demandé. Donc taper deux '0' en plus. Je me garderai pour ma part de conserver plus longtemps cette case d'option cochée.
 

Discussions similaires

Statistiques des forums

Discussions
312 085
Messages
2 085 196
Membres
102 814
dernier inscrit
JLGalley