2016-09-09 1 views
0

Ich habe ein Problem, dass ich nicht herausfinden kann, wie zu lösen. Zur Zeit löse ich das in Excel, aber benutze sql.Excel Verwendung von UND und OR zusammen auf der IF-Funktion

Wir haben eine Umfrage, die ausgeführt werden soll, wenn der in Rechnung gestellte Betrag erreicht;

• zuerst $ 50k, dann $ 150, dann $ 250 auslösen.

Sample Data

‚last run‘ ist, wenn die Umfrage zuletzt ausgeführt und ‚Aktueller Wert‘ der aktuelle Rechnungsbetrag ist.

Also für Zeile 1, die Umfrage zuletzt lief, wenn abgerechnet wurde 55000 und jetzt ist es 160000, die größer ist als die Schwelle 150K so Umfrage sollte daher laufen sollte es 'wahr' zurückgeben.

Row 2: ist auch wahr, weil aktuelle Wert größer als ist ‚letzten Lauf und auch‘ ist> = 150K Row 3: ist auch wahr, weil sie die Schwelle von 150K Row 4 vergangen ist: sollte falsch zurück, weil zwischen Zuletzt ran und aktueller Wert Es wurde kein Schwellenwert überschritten.

Wenn Current> = Last Run Und Aktueller Wert> = 50K oder 150K oder 250K

dann 'True' Else falsch

Wir werden die Umfrage Initiation von der wahr oder falsch zurück zu fahren davon.

Die Daten sind nur Beispieldaten, Werte für den aktuellen und letzten Lauf können sich ändern, aber die Auslösemengen bleiben gleich.

jede Hilfe wäre willkommen.

Antwort

0

Ich verstehe Ihre Frage so:

Sie wollen berechnen, welche die letzten Run Wert auszulösen, wurde geprüft, gegen, und die löst der Current Value wird geprüft, gegen, und wenn sie verschieden sind und der aktuelle Wert ist größer als letzten Lauf dann müssen wir die Umfrage erneut ausführen (TRUE zurückgeben), sonst werden wir nicht (FALSE zurückgeben).

Wenn das oben genannte Verständnis nicht stimmt, lassen Sie es mich bitte wissen.

Um dies zu berechnen Ich würde einfach einen IF-Anweisung Ausdruck erstellen, die die letzten Run verwendet auslösen, dass bestimmt, und das gleiche gilt für Current Value, und sie vergleichen.

Hier sind die beiden Formeln:

  • =IF(A2>=250000;3;IF(A2>=150000;2;IF(A2>=50000;1;0)))
  • =IF(B2>=250000;3;IF(B2>=150000;2;IF(B2>=50000;1;0)))

Dann müssen wir es alle zusammen, also hier die letzte Formel:

=AND(
    IF(A2>=250000;3;IF(A2>=150000;2;IF(A2>=50000;1;0))) 
    <>IF(B2>=250000;3;IF(B2>=150000;2;IF(B2>=50000;1;0))) 
    ;B2>A2) 

(Entferne Zeilenumbrüche und setze alles zusammen auf o ne lange Linie)

Verwandte Themen