Aide Formule plage variable

Beast464

XLDnaute Junior
Bonjour le forum
Voici mon probleme:

Je suis sur une feuille3:

Code:
IF(Sheet1!$A2=0,0,IF(AND(OR(Sheet2!C2<>0,Sheet2!D2<>0,Sheet2!E2<>0),(MOD(COLUMNS($D1:D1),ROUND(Sheet1!$A2,0))=0)),Sheet1!F2,0)))

Cette formule verifie:a droite et a gauche de la cellule de depart D2, si sur la feuille 2 elles sont differentes de 0 ( Verifie aussi la cellule de depart). Et si c'est le cas, on met F2 dans la cellule de la feuille 3 correspondante.

Mon probleme est que parfois il faudrait que ce soit les 2 cellules a droite et les 2 cellules a gauche, ou les 4 , ou rien.
Pour cela j'ai donc cree un coef 2 3 4 0 etc.
Mais je ne sais pas comment ecrire quelque chose comme ceci:
Code:
IF(Sheet2!"Colonne-coef"&2:"Colonne+coef"&2<>0)
Evidemment cela ne marche pas ^^

Une idee serait la bienvenue :p
Merci d'avance pour tout aide.

Si besoin d'un exemple j'en creerai un, mais probablement soit impossible a ecrire de la sorte soit un pb de syntaxe.
 

Tibo

XLDnaute Barbatruc
Re : Aide Formule plage variable

Bonjour,

Peux-tu revenir avec des explications plus précises ?

Les valeurs que tu as dans Sheet3 sont-elles les valeurs attendues ? Si non, indique nous manuellement les résultats attendus.

A te (re)lire

@+
 

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

Normalement si je me suis pas trompe, ce sont les formules par lignes qui sont importantes pour illustrer mon exemple avec le coef.
Les valeurs sont correcte , formules rentree par ligne a la main. Chiffres bidons evidemment.

Sur la ligne 2 il ne verifie que la case apres <>0

Sur la ligne 3 il verifie case elle meme case apres case +2.

Sur la ligne 4 c'est la case + les 3 suivantes

Sur la derniere case elle meme + suivante.

mais j'aimerai ne pas le faire a la main, mais comme indique precedement, en fonction d'une coef ( qui donnerait l'etendue de la plage)
Coef dans la colonne B de la feuille 1.

La verification des cases se fait par rapport a feuille 2.
 

Tibo

XLDnaute Barbatruc
Re : Aide Formule plage variable

re,

J'ai branché la boule de cristal, mais elle ne semble pas fonctionner ce matin.

Par exemple, sur la ligne 2, tu n'as que des zéro. Peux-tu nous expliquer dans le détail le cheminement logique qui conduit à ce résultat.

Entre temps, je avis voir si je parviens à réparer ma boule de cristal.

@+
 

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

Dans mon exemple, il test les cases de la feuille2 de la meme ligne.

Sur la ligne 2, lors du test, les cases sont vides donc non <>0 . il mets rien.

Peut etre mon exemple est il trop abstrait hors contexte. je vais enlever les stats et juste mettre 2 3 chiffres.

Donc ce que ca donne. si les cellules 1 2 3.. colonnes plus loin que la cellule source sont <>0 sur la feuille 2, il mettra les chiffres de la colonne F sur la feuille 3, la ou le test <>0 a ete vrai. .

Regarde la pièce jointe Classeur1.zip

hmm ( il manquait des signes <>0 sur le premier fichier ) mais on a rien vu ^^.

Et tjrs le meme soucis.. si je dois tester les 10 cases.. je ne peux pas le faire a la main.
taille de la plage a tester en colonne B
 

Pièces jointes

  • Classeur1.zip
    7.3 KB · Affichages: 27
  • Classeur1.zip
    7.3 KB · Affichages: 28
Dernière édition:

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

Je fouille le forum , j'ai vu plusieurs fois l'appel a la fonction =INDIRECT pour faire varier une ligne.

Est il possible de m'en servir pour avoir :
Code:
IF(Sheet2!"Colonne-coef"&2:"Colonne+coef"&2<>0)

Sur une colonne variable et sur une plage de donnees pas juste une cellule?
 

Tibo

XLDnaute Barbatruc
Re : Aide Formule plage variable

Bonjour,

Une tentative avec cette formule en A2 :

Code:
=SI(Sheet1!$A2=0;0;SI(SOMMEPROD((DECALER(Sheet2!A2;0;0;1;Sheet1!$B2+1)=0)*1)<>
(Sheet1!$B2+1);Sheet1!$F2;0))

à recopier vers la droite et vers le bas

J'ai une différence avec toi en I2.

Je te laisse vérifier avec le fichier

@+
 

Pièces jointes

  • beast464.zip
    4.9 KB · Affichages: 26
  • beast464.zip
    4.9 KB · Affichages: 27
  • beast464.zip
    4.9 KB · Affichages: 25

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

Il y a en effet une difference, j'ai verifie sur mon fichier, mon resultat est celui attendu.

Ceci dit place hors contexte j'avoue moi meme avoir du mal a comprendre :p

Vous pensez que via une formule =INDIRECT je ne peux pas realiser ce que j'ai ecris plus haut?
Je pense que le test de condition a faire est celui que j'ai ecris.
Le but de ma question est de trouver comment tester sur une plage variable ma condition <>0.

Je risque de rencontrer un probleme, si le test se fait sur toute la plage a la fois, ou cellule par cellules.... prise de tete..usine a gaz ma formule

Je ne comprends pas trop ta formule ceci dit.

Merci.
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Aide Formule plage variable

Bonjour,

En reprenant ton fichier, ta formule en H2 :

Code:
=SI(Sheet1!$A2=0;0;SI([COLOR=Red]Sheet2!I2<>0[/COLOR];Sheet1!$F2;0))

teste le contenu de I2

Donc un décalage de 1 par rapport à la colonne H

Or, ton tableau en Sheet1 mentionne 0 en B2, donc décalage de 0, non ?

Ou alors quelque chose m'a échappé.

Sinon, pour faciliter la résolution de ton problème, il serait plus pratique d'avoir toutes des données (les 3 tableaux de tes 3 feuilles) dans une seule et même feuille. Ca permettrait d'avoir un visu global d'un seul coup sans avoir à se déplacer de feuille en feuille.

A te (re)lire pour des précisions sur le point évoqué à propos de H2

@+
 

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

En effet dans ma formule je regardais la case d'apres, alors que le coef 0 ne veut dire que de regarder la case elle meme.

Pourrais tu m'expliquer le fonctionnement de ta formule?
Je ne me sers jms de ces fonctions.Donc je ne vois pas trop comment elles fonctionnent.
et si je veux tester les 2 cellules d'avant et les 2 d'apres?
Dans mon exemple j'ai tjrs fait les cellules d'apres mais normalement c'est coef d'avant et les coef d'apres. ( ma formule ne marche pas car la case d,avant premiere cellule contient du texte donc <>0) soit test sur cellule d'avant et cellule d'apres pour coef = 1, test sur les 2 cellules d'avant et d'apres si coef = 2 ... etc
Voici le fichier avec tout sur une meme feuille.Regarde la pièce jointe Classeur1.zip

Edit : Hmm si on test les 4 d'apres peut etre pas besoin de test aussi les 4 d'avant.. a voir
 

Pièces jointes

  • Classeur1.zip
    6.5 KB · Affichages: 19
  • Classeur1.zip
    6.5 KB · Affichages: 24
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Aide Formule plage variable

re,

... Hmm si on test les 4 d'apres peut etre pas besoin de test aussi les 4 d'avant.. a voir

Effectivement, d'après ton énoncé, il s'agissait des cellules avant et après. Mais à la lecture de tes formules, je me suis aperçu que tu ne prenais en compte que les cellules d'après, ce que j'ai respecté dans la formule proposée.

Pour moi, sans avoir approfondi la chose, je pense qu'il faut également tester les celules d'avant pour respecter ton énoncé.

Et s'il faut prendre en compte les cellules d'avant, la formule va devenir un peu plus complexe et demander un peu de temps.

Et je ne vais pas pouvoir m'y mettre tout de suite.

Je te laisse faire des tests sur cet aspect avant / après et nous rejoindre un fichier complété manuellement avec les résultats attendus en fonction de ce critère.

A te (re)lire

@+
 

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

J'ai teste ta forule sur un exemple un peu plus concret, et je n'ai pas l'impression d'avoir besoin de tester celles d'avant.
En effet puisque on test celles d'apres a chaque fois, il n'y a pas besoin de retester les cellules d'avant, qui ont deja ete tester. Cepedant il se peut que cela pose probleme dans un ou deux cas de figure.

Je me penche sur le probleme.

Sur mes differents psot il m'est difficile de poster des exemple plus concret que ceux precedent. Fichier de base contenant une veritable usine a gaz en vba, dur de simplifier ^^

Edit : En fait si.. si le chiffre a caller tombe juste apres la case a verif ou 2 cases apres. Et si je lui dis de faire sauter cette valeur..la premiere cellule s'envole aussi car la colonne d'avant contient du texte..
J'essai de faire un exemple.
 
Dernière édition:

Beast464

XLDnaute Junior
Re : Aide Formule plage variable

Voici un exemple avec la difference ( assez problematique en fait :p)

J'ai commence la fornule 2 cases apres car je ne savais pas comment faire autrement.Regarde la pièce jointe Classeur1.zip

Si je veux mette le chiffre partout, sauf sur les cases du coefficient? l'inverse de ce que j'ai propose, cela simplifie t-il la formule ou pas du tout?
 

Pièces jointes

  • Classeur1.zip
    6.9 KB · Affichages: 25
  • Classeur1.zip
    6.9 KB · Affichages: 21
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 333
Messages
2 087 378
Membres
103 529
dernier inscrit
gonzi