Méthode alternative pour déterminer s'il y a des données textuelles dans la plage


0

J'ai plusieurs feuilles dans lesquelles j'ai besoin de m'assurer et de valider que tous les «nombres» (valeurs) dans des plages prédéterminées sont réellement des nombres. Nous pouvons supposer que toutes les valeurs numériques sont valides. Toutefois, les plages ne sont pas exactement prédéterminées, car elles sont remplies quotidiennement avec de nouvelles importations de données, ce qui signifie plus de lignes. Toutefois, la référence de cellule de départ, O3, devrait toujours être la même.

Actuellement , je suis en utilisant COUNT(O3:BB1740)et COUNTA(O3:BB1740)puis trouver la différence entre les deux valeurs (si la différence est zéro , il indique qu'il existe des données dans la plage qui est non numérique).

Cette méthode me semble difficile, donc je cherche une alternative raisonnable.

  • Si possible, comment pourrais-je isoler et identifier la valeur non valide (je sais que je peux boucler chaque cellule, mais je recherche une approche non-macro si possible)

(Ce serait génial s'il y avait une IsNumberfonction pour les gammes)

Réponses:


3

Une méthode plus élégante consiste à utiliser une formule matricielle. Cela retournera TRUE si chaque nombre de la plage est un nombre ou FALSE si la plage contient des nombres non blancs ou des blancs.

{= AND (ISNUMBER ( range ))}

Pour isoler les valeurs non numériques de la plage, vous pouvez appliquer la mise en forme conditionnelle à l'aide d'une formule similaire.

Astuce: pour créer une formule matricielle, appuyez sur Ctrl+ Shift+ Enterau lieu de Enterlors de la saisie / modification de la cellule.


Est-il possible d'exclure des espaces?
Ahmad

Un problème, Excel se plaint constamment de manquer de mémoire lors de l’utilisation de cette fonction. J'ai cependant plusieurs feuilles qui utilisent cette fonction ...
Ahmad

@Ahmad: Pas aussi simplement. Vous pouvez utiliser une fonction nécessitant tous les nombres ou les blancs en entrée, telle que GCD () dans une formule telle que = ISNUMBER (GCD (plage)) (pas une formule matricielle). Il est plus court que votre idée originale, mais il est tout de même 'hackish' :)
Mike Fitzpatrick

@ Ahmad: Je n'ai pas remarqué que votre portée était si grande. Je suis surpris que ma première solution vous donne des erreurs de mémoire, mais, dans ce cas, je ne recommanderais pas non plus ma deuxième solution GCD. Si votre propre solution fonctionne, vous devriez probablement vous en tenir à cela.
Mike Fitzpatrick

Je ne suis pas sûr, mais je suppose que les formules de tableau sont volatiles. Ce que j’ai fait, c’est d’exécuter la formule à partir d’une macro pour chaque feuille, mais de la supprimer immédiatement après avoir obtenu le résultat.
Ahmad
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.