2017-01-03 1 views
1

Ich habe eine lange If Funktion in einer Zelle in einem Excel 2003 Arbeitsblatt geschrieben.IF-Funktion in Excel ist zu lang. Wie vereinfacht man?

Ich möchte hinzufügen, aber Excel sagt mir, dass meine Funktion zu lang ist.

Kann jemand die Länge der Funktion vereinfachen oder verringern?

In Column K3, ich habe eine Dropdown-Liste der Arten von Defekt, dann diese IF-Funktion in Spalte L3, um eine spezifische Fehlerbeschreibung basierend auf den Arten von Fehlern in column K3 ausgewählt angezeigt.

=IF(ISTEXT(K3)=TRUE,IF(OR(K3="Abnormal Finishing",K3="Bending Mark",K3="Bent",K3="Contamination",K3="Crack",K3="Damage",K3="Dented",K3="Discoloration",K3="Finger Print",K3="Flow Mark",K3="Gap",K3="Insufficient Paint",K3="Scratches",K3="Rusty",K3="Stain Mark",K3="Standoff Mark",K3="Tool Mark",K3="Warpage",K3="Water Mark",K3="White Mark",K3="White Spot"),"Cosmetic",IF(OR(K3="Angle Out",K3="Dimension Out",K3="Fitting Problem"),"Dimension",IF(OR(K3="Assembly Misalignment",K3="Fan Broken",K3="Fan Not Functioning",K3="Assembly Wrong Orientation",K3="Missing Component",K3="Missing Rivet (Assembly)",K3="Part Warping (Assembly)",K3="Rivet Loose (Drop) (Assembly)",K3="Rivet Wrong Location (Assembly)",K3="Rivet Wrong Orientation (Assembly)",K3="Screw Loose (Drop)",K3="Screw Stuck"),"Assembly","ERROR"))),"ERROR") 

Antwort

1

Ein einfacher Weg wäre, getrennte Listen zu machen und prüfen, ob K3 in der Liste vorhanden ist. Zum Beispiel eine Liste in jeder Spalte (J hier) macht für

  1. Abnormal Finishing
  2. Biegen Mark
  3. Bent
  4. Kontamination

Verwendung dieser Formel, wenn Ihr Wert in K3 zu überprüfen existiert in dieser Liste

=IFERROR(MATCH(K3,J11:J14,0)>0,FALSE)

J11:J14 ist meine Liste. Die Formel ergibt TRUE oder FALSE

Ihre letzte Formel würde aussehen wie

=IF(ISTEXT(K3),IF(IFERROR(MATCH(K3,L3:L7,0)>0,FALSE),"Cosmetic",IF(IFERROR(MATCH(K3,M3:M7,0)>0,FALSE),"Dimension",IF(IFERROR(MATCH(K3,N3:N7,0)>0,FALSE),"Assembly","ERROR"))),"ERROR") 

wo

L3:L7, M3:M7, N3:N7 sind Listen für zu Hause, Dimension und Montage Kriterien

Dies könnte weiter bearbeitet.

+0

Und eins Vorteil dieser Lösung ist, dass es einfach ist, Elemente zu jeder Liste hinzuzufügen. –

+0

Wenn Sie Listen erstellen, können Sie auch etwas wie "Spalte J" den Fehler und "Spalte K" den Typ eingeben. Ein einfaches 'IFERROR()' mit einem 'SVERWEIS 'darin wäre auch einfach, Elemente hinzuzufügen, und es würde die Formel noch mehr verkürzen – Moacir

0

Ich finde normalerweise, dass mehrere IF Anweisungen vermieden werden können mit einer VLOOKUP Funktion. Sie benötigen Bedingungen und die Ergebnisse in einer Tabelle wie folgt aus:

Paste in A4: A39

Abnormal Finishing 
Bending Mark 
Bent 
Contamination 
Crack 
Damage 
Dented 
Discoloration 
Finger Print 
Flow Mark 
Gap 
Insufficient Paint 
Scratches 
Rusty 
Stain Mark 
Standoff Mark 
Tool Mark 
Warpage 
Water Mark 
White Mark 
White Spot 
Angle Out 
Dimension Out 
Fitting Problem 
Assembly Misalignment 
Fan Broken 
Fan Not Functioning 
Assembly Wrong Orientation 
Missing Component 
Missing Rivet (Assembly) 
Part Warping (Assembly) 
Rivet Loose (Drop) (Assembly) 
Rivet Wrong Location (Assembly) 
Rivet Wrong Orientation (Assembly) 
Screw Loose (Drop) 
Screw Stuck 

Paste in B4: B39

Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Cosmetic 
Dimension 
Dimension 
Dimension 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 
Assembly 

Dann können Sie verwenden, um die folgenden Formel:

=IFERROR(VLOOKUP(K3,$A$4:$B$39,2,0),"ERROR")