Autres Formule Cellule avec chiffre et texte

ultra_v

XLDnaute Occasionnel
bonjour ,

la colonne "A" contient des milliers de données ( numerique , text , numerique & text )
j'en ai pas réussi avec les filtres classiques je voudrais svp une formule :
si la Cellule contient que du texte " aaa aaa a aaa" = renvoie la valeur "text "
si la Cellule contient que du texte & numerique genre " aaa 1589 " = renvoie la valeur "alphanumerique "
si la Cellule contient que du chiffre = renvoie la valeur "numerique "
merci

Excel 2007
 

Jacky67

XLDnaute Barbatruc
bonjour ,

la colonne "A" contient des milliers de données ( numerique , text , numerique & text )
j'en ai pas réussi avec les filtres classiques je voudrais svp une formule :
si la Cellule contient que du texte " aaa aaa a aaa" = renvoie la valeur "text "
si la Cellule contient que du texte & numerique genre " aaa 1589 " = renvoie la valeur "alphanumerique "
si la Cellule contient que du chiffre = renvoie la valeur "numerique "
merci

Excel 2007
Bonjour
A tester
Code:
=SI(ESTNUM(A1);"Numérique";SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;0;"");1;"");2;"");3;"");4;"");5;"");6;"");7;"");8;"");9;""))=NBCAR(A1);"Texte";"Alphanumérique"))
 

Pièces jointes

  • MumAlphaText.xlsx
    15.4 KB · Affichages: 0
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour ultra_v, Jacky67,

Une autre solution dans ce fichier avec en B2 :
Code:
=SI(A2="";"";SI(SOMMEPROD(-ESTNUM(-STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)));SI(ESTNUM(-A2);"numérique";"alphanumérique");"alpha"))
A+
 

Pièces jointes

  • Test(1).xlsx
    10.4 KB · Affichages: 4
Dernière édition:

Jacky67

XLDnaute Barbatruc
Bonjour ultra_v, Jacky67,

Une autre solution dans ce fichier avec en B2 :
Code:
=SI(A2="";"";SI(SOMMEPROD(-ESTNUM(-STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)))=0;"alpha";SI(SOMMEPROD(--ESTNUM(-STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)))<NBCAR(A2);"alphanumérique";"numérique")))
A+
Hello job75
Certainement que
alpha=texte
Des difficultés avec des nombres avec décimale..

**Ouppss!!, Pas vu que c'était modifié
 
Dernière édition:

Jacky67

XLDnaute Barbatruc
merci à vous tous
ça marche parfait
une petite modif svp jacky les cellules vides ça me renvoit text

Re..
Ben ça alors...
Code:
=SI(A1="";"";SI(ESTNUM(A1);"Numérique";SI(NBCAR(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;0;"");1;"");2;"");3;"");4;"");5;"");6;"");7;"");8;"");9;""))=NBCAR(A1);"Texte";"Alphanumérique")))
 

patricktoulon

XLDnaute Barbatruc
Bonjour à tous
j'ai peut être un moyen de réduire les kilomètres de substitue
fair un equiv 0 matriciel sur une matrice grâce à stxt indirect ligne
grace à cela tout les caractères de la chaine sont passés en revue
et le principe va me donner la première position d'un chiffre dans la chaine le tout dans un si(esterreur ....)bien sur
le tout dans un si esnum( valeur ;"numerique" ; si(estnum(matriciel de recherche ; "alphanumérique" ; "alpha")
la formule ca donnerait ceci
VB:
=SI(ESTNUM(A2);"numérique";SI(ESTNUM(EQUIV(0;ESTERREUR(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)*1)*1;0));"Alphanumérique";"Alpha"))

le résultat me parait cohérent
demo.gif

sinon il y a secence pour 365 mais celle ci valider en matriciel sur <365 fonctionne
donc compatible 2007 à 365
 

patricktoulon

XLDnaute Barbatruc
re
allez en réfléchissant un peu plus je fait avec une matrice codée en dur
la formule est encore plus courte
c'est un peu pareil sauf que la le cherche matriciel me renvoie 0 si pas de chiffre
doncdans la 2d condition si numerique , alors alpha numerique sinon numerique

VB:
=SI(ESTNUM(A2);"Numerique";SI(MIN(SIERREUR(CHERCHE({0;1;2;3;4;5;6;7;8;9};A2);""))>0;"Alphanumerique";"Alpha"))

là aussi compatible 2007 à 365 (valider en matriciel en dessouis de 365 )
je joins un fichier avec les deux exemples
 

Pièces jointes

  • formule cherche les nombre.xlsm
    8.9 KB · Affichages: 3

Jacky67

XLDnaute Barbatruc
re
allez en réfléchissant un peu plus je fait avec une matrice codée en dur
la formule est encore plus courte
c'est un peu pareil sauf que la le cherche matriciel me renvoie 0 si pas de chiffre
doncdans la 2d condition si numerique , alors alpha numerique sinon numerique

VB:
=SI(ESTNUM(A2);"Numerique";SI(MIN(SIERREUR(CHERCHE({0;1;2;3;4;5;6;7;8;9};A2);""))>0;"Alphanumerique";"Alpha"))

là aussi compatible 2007 à 365 (valider en matriciel en dessouis de 365 )
je joins un fichier avec les deux exemples
Hello Patrick,:)
J'avais cherché dans cette direction, sans succès, certainement dû à mon manque de patience.
Bravo 🙌👏👏;)
Le seul avantage des rallonges de 'SUBSTITUE' c'est quelle n'a pas de validation matricielle.
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
@Jacky67 , @job75
tiens pour le coup je soulève une autre question
version 1 (2 formules valables)

a
VB:
=SI(A2<>"";SI(ESTNUM(A2);"numérique";   SI(ESTNUM(EQUIV(0;ESTERREUR(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)*1)*1;0));   "Alphanumérique"; "Alpha"));"")

b
Code:
=SI(ESTNUM(A2);"numérique";   SI(ESTNUM(EQUIV(0;ESTERREUR(STXT(A2;LIGNE(INDIRECT("1:"&NBCAR(A2)));1)*1)*1;0));   "Alphanumérique"; SI(A2<>"";"Alpha";"")))


version 2 (2 formules valables)

a
Code:
=SI(A2<>"";SI(ESTNUM(A2);"Numerique";SI(MIN(SIERREUR(CHERCHE({0;1;2;3;4;5;6;7;8;9};A2);""))>0;"Alphanumerique";"Alpha"));"")

b
Code:
=SI(ESTNUM(A2);"Numerique";SI(MIN(SIERREUR(CHERCHE({0;1;2;3;4;5;6;7;8;9};A2);""))>0;"Alphanumerique";si(A2<>"";"Alpha";"")))

la question;
quelle est l'incidence (en terme de ressource) de faire le test A2<>"" en global ou dans le matriciel?
 

Discussions similaires

Réponses
2
Affichages
265

Statistiques des forums

Discussions
314 486
Messages
2 110 115
Membres
110 672
dernier inscrit
CHACHALUBAN