XL 2019 Cellule avec chiffres ou texte ou les 2

loiclass

XLDnaute Occasionnel
Bonjour,
Existe t'il une macro permettant de dire si dans une cellule nous avons saisi uniquement des chiffres (entier ou non), ou uniquement du texte, où les deux ?

Merci de votre aide.
 

jmfmarques

XLDnaute Accro
Bonjour
Je suppose que par texte, tu entends "tout sauf des chiffres" . Sinon : soit très précis sur cet aspect !
Tu peux toujours t'amuser avec une fonction du genre (bâclé) :
VB:
Private Function on_va_voir(ch As String) As String
Select Case True
  Case ch Like "*[!0-9]*[0-9]*"
    on_va_voir = "les deux, mon capitaine"
   Case ch Like WorksheetFunction.Rept("[0-9]", Len(ch))
     on_va_voir = "que des chiffres ..."
   Case Else
     on_va_voir = "que des caractères autres que des chiffres"
End Select
End Function
 

Patrice33740

XLDnaute Impliqué
Bonjour,

Tout d'abord, il faut utiliser les bons mots, les chiffres sont du texte qui représentent un nombre ou autre chose par exemple un numèro. Dans ce dernier cas cas reste du texte.
La représentation des nombres à l'aide de chiffres et des quelques autres caractères fait l'objet de conventions prédéterminées.
Lorsque des chiffres sont assemblés avec du texte, en dehors des conventions sus-citées, ça reste du texte.
Il y a des nombres entiers (ou décimaux ou autres) mais pas de chiffre entier.

Excel différencie les nombres et les textes.
Pas besoin de macro, une simple formule :
=ESTNUM(A1) pour savoir si c'est un nombre.
=ESTTEXTE(A1) pour savoir si c'est un texte.
 
Dernière édition:

jmfmarques

XLDnaute Accro
A loiclass
Si l'on s'en tient à ce que tu as exposé et que tu cherches à déterminer si la cellule :
- ne contient que des caractères numériques
ou
- ne contient que des caractères non numériques
ou
- contient à la fois des caractères numériques et des caractères non numériques
l'utilisation des fonctions Excel ESTNUM et ESTTEXTE ne te sera d'aucun secours
Et pour cause : ces fonctions retournent le type de la donnée, lequel est déterminé par le format de la cellule. Ainsi et par exemple, si la cellule A1 est au format texte et contient "6",
ESTNUM(A1) retournera FAUX et ESTEXTE(A1) retournera VRAI, contrairement à tes attentes.
 

jmfmarques

XLDnaute Accro
Bonjour eriiiic
Je n'avais pas vu ce coup-là
des chiffres (entier ou non)
loiclass voudra bien nous expliquer ce que pourrait bien être un chiffre non entier o_O
En y réfléchissant à nouveau après le café, je me dis qu'il s'agit peut-être d"un 6 ou d'un 9 dont on a coupé la queue (--->> "o" et "°") , ou d'un "7" dont on a coupé la partie haute horizontale (---> "/"), ou d"un "8" dont il ne resterait que le "o" inférieur ou le "°" supérieur, etc ... ????
 
Dernière édition:

loiclass

XLDnaute Occasionnel
Bonjour,
Effectivement il s'agit d'une erreur de langage de ma part.
Il y a comme saisie possible :
- des nombres de entiers (1/2/3/...)
- des nombres à virgules (0,5 / 1,8 / ...)
- des nombres + du texte (50 gr / 1l / ...)

Je vais essayer de contourner le problème en supprimant tous les chiffres et virgules et en vérifiant si au final la cellule et vide ou non

Je vous tient au courant
 

loiclass

XLDnaute Occasionnel
C'est pour du calcul de besoin à partir d'un inventaire.
Certaines cellules de l'inventaire sont en nombre de sacs par exemple, d'autres sont en gr et d'autres sont en nb sacs + gr.
Les nb sacs se remplissent automatiquement dans le calcul de besoin, par pour ce qui des autres je souhaite faire intervenir l'utilisateur pour qu'il renseigne lui même l'info après contrôle des valeurs
 

Discussions similaires

Réponses
3
Affichages
203

Statistiques des forums

Discussions
312 520
Messages
2 089 297
Membres
104 092
dernier inscrit
karbone57