probleme avec cellule

  • Initiateur de la discussion Initiateur de la discussion blacsap
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

blacsap

Guest
Salut
J’ai crée 1 userform avec des tex box qui me remplisse 1 tableau.
Quant je rentre du texte pas de problème mais quand c’est un chiffre, il se met bien dans les cellules mais un point d’exclamation apparaît sur la cellule de mon tableau avec comme erreur « nombre stocké sous forme de texte «
Comment puis je faire pour ne plus avoir ce problème ??
Merci d’avance
@+
Blacsap
 
Salut blacsap,

Alors, il y a deux facon de voir.

Soit tu veux indifferement du texte ou des chiffres dans tes cellules, il suffit de changer le format de tes cellules : tu les sélectionnes, puis Format - Cellules - Standard.

Soit tu ne veux que du texte dans ta textbox, et pas de chiffre. Il faut alors faire un test dans ta macro de validation (code à verifier):

if isnumeric(nom_textbox.value) then
msgbox "tu dois rentrer du texte"
else: hide
(suite de la macro)
End if

Voila, j'espere que ca t'ira.

le Fnake
 
Salut BlacSap, Le Fnake, le Forum


Héhéhé BlackSap, tu vas un peu fort avec la phrase "J'ai créé un UIserForm"... Car je viens de voir ton fichier joint, et je sais très bien qui a écrit ceci ... Bon enfin c'est pas grave...

Donc il faut retourner une valeur Numérique dans la cellule comme ceci
Range("A1") = Cbyte(TextBox1)
Range("A1") = CDbl(TextBox1)
Range("A1") = CInt(TextBox1)
Range("A1") = CLng(TextBox1).... etc mais il faut être sûr que c'est du numérique dans la TextBox sinon plantage....

Tu as différentes méthodes de tests si tu veux être sûr que du numérique a été saisi...

Soluce 1 "Checking à la Validation"
(Ici je prends pour exemple que tu veux de l'Integer (Chiffre Entier de -32,768 to 32,767)...

tu changes ceci dans la fin du code du CommandButton "OK"

Ligne = Sheets("Feuil1").Range("A30").End(xlUp).Row + 1

On Error GoTo ErrorHandler
Cells(Ligne, 1).Value = CInt(TextBox1)
Cells(Ligne, 2).Value = B
Cells(Ligne, 3).Value = C
Cells(Ligne, 4).Value = D
Cells(Ligne, 5).Value = E
Cells(Ligne, 6).Value = F
Cells(Ligne, 7).Value = G
Cells(Ligne, 8).Value = H
Unload UserForm1
Exit Sub

ErrorHandler:
If Err = 13 Then
MsgBox "la valeur n'est pas numérique", vbExclamation, "Thierry's Démo"
Else
MsgBox "Erreur Non Répertoriée", vbExclamation, "Thierry's Démo"
End If
End Sub
End Sub


Soluce 2 "Checking à la Saisie"

Private Sub TextBox1_Change()
If Not IsNumeric(TextBox1) Then
With TextBox2
.SetFocus
.SelStart = 0
.SelLength = Len(TextBox1.Text)
End With
Exit Sub
End If
End Sub

Bon fin d'aprèm
@+Thierry
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
441
Réponses
1
Affichages
340
Retour