Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 "Vous avez un nombre trop important d'arguments pour cette fonction"

moanin

XLDnaute Accro
Bonsoir à tous


Pour afficher les cellules vides de certaines colonnes quand je saisis cette formule :

=SI(ESTVIDE(F2;G2;H2;I3;J2;K2;L2;M2;N2);"Vide";"Non vide")

J'ai cette erreur :

"Vous avez un nombre trop important d'arguments pour cette fonction"

Y a-t-il un numerus clausus pour cette formule ?

Merci
 

moanin

XLDnaute Accro
Bonsoir

"Oui, je crois bien que c'est 1."
Que veux-tu dire par là ?

"Ca veut dire quoi "afficher les cellules" ?? Sont-elles masquées ?"

Non, ça veut dire : afficher les cellules de colonnes qui ne contiennent rien, aucune valeur.
 

moanin

XLDnaute Accro
Mais non, je ne les ai pas masquées, je parle de cellules qui ne contiennent rien, aucune valeur

Ex
Colonne H :

L1 Jean Dupont
L2. Pierre Duval
L3
L4. André Dugenou
L5
L6. Paul Duparc

>L3 et L5 ne contiennent pas de valeur
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re,
Aurais-tu une explication sur cette impossibilité de mettre plusieurs colonnes dans ma formule ?
Cela dépend comment Krosoft a conçu la fonction. Pour la fonction ESTVIDE(), Krosoft l'a créée pour un seul paramètre qui est une unique cellule.

Pour un ensemble de cellules quelconques (cellule isolée, plage de cellules contigües ou toutes combinaison des deux), on peut écrire des fonctions personnalisée :

fonction VideValeur(...) : examine toutes les cellules et retourne VRAI si chaque cellule est vide ou contient la valeur chaine vide "". Une cellule contenant une formule qui renvoie "" sera considérée comme vide. Exemple d'utilisation : =VideValeur(D1:F1;A1;E3;C5;C8:C12)

fonction VideTout(...) : examine toutes les cellules et retourne VRAI si chaque cellule est vide ou contient la valeur chaine vide "". Une cellule contenant une formule sera considérée comme contenant quelque chose et donc ne sera pas considérée comme vide (contrairement à ci-dessus). Exemple d'utilisation : =VideTout(D1:F1;A1;E3;C5;C8:C12)

Les codes sont dans module1.

Attention : il y a une différence avec la fonction ESTVIDE() :
  1. Dans une cellule (A1 par exemple), saisir la formule =""
  2. Copier A1 puis coller en valeur dans la cellule A2
  3. Dans une cellule (A3 par exemple), saisir la formule =ESTVIDE(A2)
  4. Dans une cellule (A4 par exemple), saisir la formule =VideValeur(A2)
  5. Dans une cellule (A5 par exemple), saisir la formule =VideTout(A2)
La formule ESTVIDE renvoie FAUX et les deux autres formules renvoient VRAI.
  • Excel considère que la cellule A2 n'est pas vide et contient une valeur égale à la chaine vide "".
  • Les deux autres formules assimilent la valeur chaine vide "" à vide (et je préfère cela)
 

Pièces jointes

  • moanin- estvide- v1.xlsm
    19.3 KB · Affichages: 2
Dernière édition:

AtTheOne

XLDnaute Accro
Supporter XLD
Re bonjour
Krosoft l'a créée pour un seul paramètre qui est une unique cellule.
ESTVIDE fonctionne en matriciel pour une plage de cellules contiguës.
Donc ET(ESTVIDE(F2:N2)) validé en matriciel (CTRL MAJ ENTRÉE) renvoie VRAI si toutes les cellules sont vides et FAUX si au moins une cellule n'est pas vide ... Pour EXCEL 2021 et 365 pas besoin de validation matricielle...
À bientôt
 

Discussions similaires

Réponses
7
Affichages
495
Réponses
18
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…