XL 2013 Enregistrer dans cellule un nombre à partir textbox

FOUQUET Yves

XLDnaute Occasionnel
Bonsoir,

Je suis devant un mystère et je vais de venir fou.
Dans la procédure ci dessous je veux enregistrer dans une cellule le contenu d'une textbox. Je veux soit un ENTIER soit un VARIANT.
Le premier est juste les 4 chiffres d'une année (2019 - 2020 - 2021...)
Le second est un code postal.
Les colonnes sont au format NOMBRE avec 0 après la virgule.
Quand j'enregistre ma saisie un coup c'est OK, un coup il enregistre du texte...!!!
Merci de votre aide.
Bonne soirée.
Yves

VB:
   '--- T4 et T7 sont des variables intermédiaires pour transformer le contenu du TEXTBOX
   T4 = CInt(TextBox4.Text)      '--- année cotisation  2018 - 2019 -....
   T7 = CVar(TextBox7.Text)      '---- code postal
   Range("E" & ligne).Value = T4
   Range("H" & ligne).Value = T7
 
Solution
Bonsoir.
À priori convertir en variant n'est pas d'une grande utilité: si c'est un String ça devient un Variant/String c'est tout ! Ça ne le convertit pas pour autant en nombre. Excel, lui, décide parfois de convertir en nombre selon des règles qui m'échapent, ce qui m'énerve.
Utilisez plutôt CDbl. De toutes façon Excel enregistre toujours les valeurs numériques en Double.

Dranreb

XLDnaute Barbatruc
Bonsoir.
À priori convertir en variant n'est pas d'une grande utilité: si c'est un String ça devient un Variant/String c'est tout ! Ça ne le convertit pas pour autant en nombre. Excel, lui, décide parfois de convertir en nombre selon des règles qui m'échapent, ce qui m'énerve.
Utilisez plutôt CDbl. De toutes façon Excel enregistre toujours les valeurs numériques en Double.
 

FOUQUET Yves

XLDnaute Occasionnel
j'ai réglé mon problème en passant par l'Userforme de saisie et en passant en revu tous les enregistrements (ligne) et validant un fausse modification. Ceci a réécrit toutes les lignes qui in fine sont maintenant toutes au même format. Le trie peut donc se faire sans erreur... Merci pour votre aide et vos conseil.
 

Discussions similaires