Case vide si formule fausse et eviter de réperter les formules

sebpoly -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j ai plusieurs problème dans ma formule

=MOYENNE(RECHERCHEV(A12;'FC1'!A:AB;8;0);RECHERCHEV(A12;'FC2'!A:AB;8;0);RECHERCHEV(A12;'FC3'!A:AB;8;0);RECHERCHEV(A12;'FC4'!A:AB;8;0);RECHERCHEV(A12;'FC5'!A:AB;8;0))


le 1er j ai une erreur NA si dans mes pages il y a des cases vides
2eme peut ton eviter de repeter Recherche
3eme si je glisse ma formule vers la droite cela ne marche pas car il doit ne changer que le 8 en 9,10 ,ect...

merci pour ceux qui pourront m aider





A voir également:

3 réponses

Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour

pour ne pas répéter RECHERCHE... pas de solution sans votre fichier

pour éviter l'affichage #N/A
=SIERREUR(votre formule complète;"")

pour déplacer la formule sans changer les adresses
écrire:
$A$12 ou $A:$AB bloque l'adresse quelque soit la position de la formule
$A12 bloque la colonne seulement
A$12 bloque la ligne seulement

en fait le signe $ bloque la position qui le suit

crdlmnt


si vous voulez incrémenter le 8 en 9 et ensuite en 10 en tirant vers la droite, remplacer le 8 de la, formule initiale par COLONNE(A$8)(mais sans bloquer le A)
.. qui vaut 8 dans la, formule de départ devient 9 dans celle de droite, 10 dans la suivante, ect

crdlmnt

Errare humanum est, perseverare diabolicum
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

=COLONNE(H1) non ?
eric
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
exact, Eric, j'allais corriger mais tu es arrivé avant moi!
(c'est fait)
salut
crdlmnt
0
sebpoly
 
comment je peux vous l envoyer
0
Raymond PENTIER Messages postés 58990 Date d'inscription   Statut Contributeur Dernière intervention   17 354 > sebpoly
 
0
sebpoly
 
http://cjoint.com/?EAqkkFXLcUD
voila le lien
j'ai resolu le problème de la case NA , il reste 2 problème
eviter de repeter rechercher car je vais avoir des dizaines de feuille FC
copier la formule vers la droite et vers le bas
0
redaiwa Messages postés 351 Date d'inscription   Statut Membre Dernière intervention   119
 
Salam sebpoly.

1°) des cases vides à quel niveau? en 1ère colonne ou au milieu du tableau ?
2°) à mon avis non.
3°) il suffit de fixer les colonnes à l'aide du symbole $ comme ceci : $A:$AB;8;0

A+
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

eviter de repeter rechercher car je vais avoir des dizaines de feuille FC
C'est combien des dizaines ?
Par formule tu n'as pas le choix.
En vba il est possible de faire une fonction personnalisée mais qui risque de ralentir la feuille.
Ou une macro qui te met directement les valeurs. Lancée par un bouton et/ou à l'activation de la feuille.
Seulement il faut que les lignes et colonnes soient connues et ne bougent plus (en position et en nombre) pour que ce soit plus simple. Prévoir ton besoin avec de la marge.

copier la formule vers la droite et vers le bas
RECHERCHEV($A3;'FC1'!A:AB;8;0)
devient
RECHERCHEV($A3;'FC1'!$A:$AB;colonne()+5;0)

eric

En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
0
sebpoly
 
JE pense environ 20 feuilles la formule marche sauf pour le 8 qui reste 8 et pas 9 et un autre problème que je n avais pas vu c'est que si une case n'est pas remplie la moyenne la compte comme zero
http://cjoint.com/?EAqoZsk9ZE0
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
sauf pour le 8 qui reste 8 et pas 9
Parce que tu n'as pas fait ce que je te disais...
eric
0
sebpoly
 
je vais de le refaire ça marche mais pourquoi le +5
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
colonne() retourne le n° de colonne où est la formule: 3 + 5 = 8
Si tu la tires à droite ça te donne : 4+5=9
Encore faut-il partir de la bonne colonne, la C. Sinon tu adaptes.
eric
0
sebpoly
 
super merci
0