L'istruzione IF del foglio di calcolo è strana


0

Quindi ho ottenuto due equazioni:

=SUM(C1:INDIRECT("C"&H5))+(H1*H5)

E:

=SUM(C1:INDIRECT("C"&H3))+(H1*H5)+(K1*(H5-H3))

Ora li voglio in una dichiarazione IF come questa:

=IF(A1>$H$3;($C$1:C1)+($H$1*C1)+($K$1*(A1-$H$3));($C$1:C1)+($H$1*A1))

È stato rifatto così posso inserirlo in una cella e trascinarlo verso il basso per calcolare i numeri che voglio inserire in un grafico.

Ma dove i singoli calcoli funzionano come previsto, l'istruzione If mostra qualcos'altro anche quando lo faccio in questo modo:

=IF(H5>H3;(C1:INDIRECT("C"&H3))+(H1*H5)+(K1*(H5-H3));(C1:INDIRECT("C"&H5))+(H1*H5))

Ma quando tenuti in celle separate e appena citati funzionano:

=IF(H5>H3;K6;K5)

Perché questo comportamento strano e come lo risolvo?


quale applicazione stai usando? Excel?
PeterH

LibreOffice ma non ho notato molta differenza tra Libre ed Excel, tranne che l'interfaccia utente è un po 'diversa.
Leipt

Non posso dire per Libre cosa c'è di sbagliato in questo, ma in un formato EXCEL funziona bene in un esempio che ho appena provato. Finché c'è un valore in H3
PeterH

Ok. Proverò in Excel.
Leipt

ricordati di scambiare; per,
PeterH

Risposte:


0

Le formule che funzionano sono quelle che hanno SUM. Sembra che tu abbia dimenticato di includerlo in quelli che non funzionano.

Per esempio, (C1:INDIRECT("C"&H3)) dal IF l'istruzione genererà un array di valori, non un singolo risultato. Presumibilmente, hai intenzione di scrivere SUM(C1:INDIRECT("C"&H3)) invece, come nella prima formula.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.