Problème fonctions SI et OU

Bonjour, j 'ai découvert votre site en cherchant une solution sur excel sur un problème de fonctions.

Je souhaitais envoyer un fichier, mais l'upload a été stoppé, car il dépasse 100 ko

(il fait 147 ko)

Y'a t'il une solution pour vous exposer mon problème avec le fichier joint?

Merci à vous

Bonjour tout le monde,

essayes de l'alléger en supprimant des choses "annexes" à ton problème

au pire, expliques ton soucis

Ok, je vais essayer d'alléger, mais ça risque d'enlever la "teneur" du fichier

Re bonjour, même en édulcorant au maxi, le fichier fait 147 ko. Alors je vais essayer d'être clair sans fichier.

Mon fichier compte 4 "blocs" de 4 colonnes chacun (DEFG, puis HIJK, etc…). Chaque ligne contient des formules que je souhaite écrire, interactives d'un bloc sur l'autre.

les formules de base sont en H4= 6+7*(E4).En L4= 3+7*(E4+I4).En P4= 1+6*(E4+I4+M4).

J'aimerais écrire en H4:

Si E4 = vide, alors H4=D4, sinon =6+7*(E4)

Jusque là, je n'ai pas de problème; mais pour la suite je fais des erreurs de formules En L4, je souhaite écrire:

Si E4 et I4=vide, alors H4 (c'est à dire 12 de par la formule en H4). Si E4 et I4 ne sont pas vides, alors 3+7*(E4+I4)

Mais si E4 n'est pas vide et I4 est vide, alors H4 (c'est à dire 6+7*I4)

Mais si E4 est vide, et I4 n'est pas vide, alors H4 (c'est à dire 6+7*I4)

En P4: même principe avec formule de base 1+6*(E4+I4+M4), si E4,I4et M4 ne sont pas vides, et en tenant compte des reports de formules précédentes, si les cases E4,I4 et M4 sont ou ne sont vides ou les deux à la fois.

En clair, je souhaite que les formules de la ligne 4 et 5 (je ferais une copie de ligne 4), se décale du BLOC 1 au BLOC 2 et ainsi de suite,si cellule vide.

Merci beaucoup, je ne sais pas si c'est facile pour un pro d'excel, je ne voudrais pas abuser de votre temps.

Ps: j'ai un autre tableau sur le même principe, mais avec 8"BLOCS". J'éspere me débrouiller seul une fois le principe de base assimilé.

Merci à vous.(Même une copie d'écran fait 160 ko sous World

J'ai oublié: en colonne D, il y a une valeur fixe (12)

J'ai réussi à modifier le tableau, je l'envoie en fichier joint,

Merci à vous

https://www.excel-pratique.com/~files/doc/Copie_de_TABLEAU_DOMI.xls

Je suis désolé, mais c'est tout nouveau pour moi,

je renvoie le fichier joint avec explications, pour, je l'éspere, plus de clarté

Merci encore

https://www.excel-pratique.com/~files/doc/sNXlACopie_de_TABLEAU_DOMI.xls

Bonsoir

Essaie

=SI(OU(ET(ESTVIDE(E4);ESTVIDE(I4));ET(E4<>"";ESTVIDE(I4));ET(ESTVIDE(E4);I4<>""));H4;SI(ET(E4<>"";I4<>"");3+7*(E4+I4)))

Cordialement

Bonjour, salut Amadéus,

La même chose, mais un peu plus court :

L4 : =SI(E4*I4=0;H4;3+7*(E4+I4))

Bonjour Amadéus et Dre,

merci pour vos réponses que j'ai testé, mais elles ne remplissent pas toutes les conditions souhaitées; peut être mes explications étaient insuffisantes?

Si E et I sont vides= ok

mais si E est vide, et I non (ou l'inverse), la valeur en L devrait être 6+7*(E4);

soit la valeur initiale de H, le but étant de décaler les formules d'un bloc à l'autre,

si cellule vide.

Sur le même principe, pour le "BLOC 4", quelle serait les formules sachant qu'il y a de = en +

de paramètres: poss. 3 cellules précédentes vides, ou non vides, 1 vide ou 2, etc...

la valeur en P sera différente selon les cas de figures précedents.

Ps: avez vous pu visualiser la pièce jointe?

Merci à vous

dre a écrit :

Bonjour, salut Amadéus,

La même chose, mais un peu plus court :

L4 : =SI(E4*I4=0;H4;3+7*(E4+I4))

Bonjour,

esayes ceci pour la prise en compte de "si E est vide, et I non (ou l'inverse)" :

L4 : =SI(E4*I4=0;H4;SI(OU(E4="";I4="");6+7*E4;3+7*(E4+I4))

Cdlt,

Gigi

Bonjour Gigi 777, et merci pour ta proposition, mais ça ne marche pas non plus...

Bien cordialement

Bonjour

Dans ton premier énoncé, tu écris:

Mais si E4 n'est pas vide et I4 est vide, alors H4 (c'est à dire 6+7*I4)

Mais si E4 est vide, et I4 n'est pas vide, alors H4 (c'est à dire 6+7*I4)

Maintenant, tu écris

mais si E est vide, et I non (ou l'inverse), la valeur en L devrait être 6+7*(E4);

Alors, E4 ou I4 ?

A te lire

Cordialement

Bonsoir Amadeus,

désolé pour mes explications confuses, c'est bien si l'une est vide et pas l'autre, quelque soit l'ordre (E4 vide et pas I4, ou I4 vide et pas E4).

En fait, il faut avoir en tête que mon souhait est que les formules de base que j'ai indiqué pour chaque "bloc", se reporte du "bloc 1" au "bloc 2", ainsi de suite si E ou I ou M sont vides

Merci pour votre patience, bien cordialement

Croft

Bonsoir

Cela, je l'avais compris, reviens sur mon précédent message, j'ai mis en rouge ce qui me tracasse.

Cordialement

Ok, bonsoir Amadeus, et désolé, j'ai les neurones un peu fatigués...

1er cas: L4=SI(E4="" ET I4<>"", alorsL4=6+7*(I4)

2ème cas: L4=SI(E4<>""ET I4="", alors L4= 6+7*(E4)

je souhaite simplement reporter la formule au bloc suivant si cellule vide, en prenant en compte les valeurs dans les cellules précédentes

Merci pour ta patience, autant pour moi...

Donc, cette formule en L4..

=SI(ET(ESTVIDE(E4);ESTVIDE(I4));H4;SI(ET(E4<>"";ESTVIDE(I4));6+7*E4;SI(ET(ESTVIDE(E4);I4<>"");6+7*I4;SI(ET(E4<>"";I4<>"");3+7*(E4+I4)))))

J'attend ta confirmation

Cordialement

Bonjour Amadeus, SUPER.... c'est ok;

merci beaucoup pour ton aide et ta patience. Vu la formule, je n'aurais jamais trouvé, compte tenu de mes compétences sur Excel.

Je vais essayer en utilisant ta formule, de l'adapter pour le bloc 4 ainsi que mon 2ème tableau qui en compte 8.

Le début de ta formule: =SI(ET(ESTVIDE(E4);ESTVIDE(I4));H4; est elle équivalente à celle là

=SI(ET(E4="";I4="");H4) ? est ce une autre façon de l'écrire?

et peut on écrire en une seule fois =SI(ET(EST VIDE(E4,I4,...) ? ou bien =SI(ET(E4,I4,...="")?

Et combien peut on inscrire de formules SI et ET pour chaque cellule?

Merci encore, bonne journée

Bonjour

Pour répondre à tes questions:

1)

Le début de ta formule: =SI(ET(ESTVIDE(E4);ESTVIDE(I4));H4; est elle équivalente à celle là

=SI(ET(E4="";I4="");H4) ? est ce une autre façon de l'écrire?

Réponse: Une cellule vide ne contient rien, mais si elle contient une formule qui renvoie la valeur "" (aucun résultat), elle n'est plus vide. Dans ton cas, tu dis, si E4 ne contient rien donc, SI(ESTVIDE. Par contre, si E4 contient une formule qui peut renvoyer "", il est plus logique d'écrire SI(E4=""...

2) La Fonction ESTVIDE n'accepte qu'un seul argument donc ESTVIDE(E4) ou s'il s'agit de cellules adjacentes ESTVIDE(E4:I4) pour toutes les cellules du champ E4:I4, ce qui n'est pas le cas ici.

3) On peut écrire 7 conditions SI dans une même formule.

Lorsque plusieurs conditions SI sont identiques dans plusieurs cellules, on peut Nommer par exemple une formule contenant 4 SI, et le Nom ainsi défini, utilisé dans les formules, remplace les 4 conditions SI, ce qui permet d'augmenter le nombre de conditions SI du calcul. Au delà, ou s'il n'est pas possible de Nommer une partie des formules, il faut passer par les macros et VBA.

Cordialement

Ok, merci beaucoup pour ces précisions...

Bonne fin de journée

Croft

Rechercher des sujets similaires à "probleme fonctions"