Hallo Walter
Man kann fast immer alles machen…
Mit Formeln würde ich das Ding einfach erweitern um 2Spalten und 3 sverweise verwenden.
die 3 Arten unterscheidet man am besten mit wenn Abfragen.
Matrix
G3 bis J34
vereinfacht
Anzahl Proben Fehler erlaubt Lieferung zurück
1 2 0 1
9 3 0 1
150 5 0 1
280 8 4 7
500 13 5 8
1200 20 6 9
3200 32 7 10
10000 50 8 11
normal
Anzahl Proben Fehler erlaubt Lieferung zurück
1 2 0 1
9 3 0 1
150 5 0 1
280 8 4 7
500 13 5 8
1200 20 6 9
3200 32 7 10
10000 50 8 11
verschärft
Anzahl Proben Fehler erlaubt Lieferung zurück
1 2 0 1
9 3 0 1
150 5 0 1
280 8 4 7
500 13 5 8
1200 20 6 9
3200 32 7 10
10000 50 8 11
L4 bis L6
vereinfacht
normal
verschärft
Diese 3 Zeilen kannst du dann auch verwenden für die Bedingte Formatierung in Zelle B6, so dass du da eine Auswahlliste mit den 3 Möglichkeiten hast.
A5 bis E5
Anzahl Prüfart Proben Fehler erlaubt Lieferung zurück
A6 --> Anzahl
B6 --> vereinfacht oder normal oder verschärft
C6
=WENN(B6=$L$4;SVERWEIS(A6;$G$5:blush:J$12;2;WAHR);WENN(B6=$L$5;SVERWEIS(A6;$G$16:blush:J$23;2;WAHR);WENN(B6=$L$6;SVERWEIS(A6;$G$27:blush:J$34;2;WAHR);"")))
D6
=WENN(B6=$L$4;SVERWEIS(A6;$G$5:blush:J$12;3;WAHR);WENN(B6=$L$5;SVERWEIS(A6;$G$16:blush:J$23;3;WAHR);WENN(B6=$L$6;SVERWEIS(A6;$G$27:blush:J$34;3;WAHR);"")))
E6
=WENN(B6=$L$4;SVERWEIS(A6;$G$5:blush:J$12;4;WAHR);WENN(B6=$L$5;SVERWEIS(A6;$G$16:blush:J$23;4;WAHR);WENN(B6=$L$6;SVERWEIS(A6;$G$27:blush:J$34;4;WAHR);"")))
In VBA würde das etwa so aussehen.
3 Funktionen. Für jede Ausgabezelle eine.
AnzProben
FehlerErlaubt
FehlerRueckweisung
in irgend eine Zelle
=AnzProben(A6;B6)
und
=FehlerErlaubt(A6;B6)
und das auch noch in eine Zelle
=FehlerRueckweisung(A6;B6)
und das Zeugs da unten in VBA Modul
nach dieser Anleitung
http://excelwelt.de/Makros/funk.html
… und dann musst du nur noch richtige Zahlen eintragen…
'---------------------------------------
Function AnzProben(Anzahl, Pruefart)
Select Case Pruefart
Case „vereinfacht“
Select Case Anzahl
Case 1 To 8
AnzProben = 2
Case 9 To 149
AnzProben = 3
Case 150 To 279
AnzProben = 5
Case 280 To 499
AnzProben = 8
Case 500 To 1199
AnzProben = 13
Case 1200 To 3199
AnzProben = 20
Case 3200 To 9999
AnzProben = 32
Case Else
AnzProben = 50
End Select
Case „normal“
Select Case Anzahl
Case 1 To 8
AnzProben = 2
Case 9 To 149
AnzProben = 3
Case 150 To 279
AnzProben = 5
Case 280 To 499
AnzProben = 8
Case 500 To 1199
AnzProben = 13
Case 1200 To 3199
AnzProben = 20
Case 3200 To 9999
AnzProben = 32
Case Else
AnzProben = 50
End Select
Case „verschärft“
Select Case Anzahl
Case 1 To 8
AnzProben = 2
Case 9 To 149
AnzProben = 3
Case 150 To 279
AnzProben = 5
Case 280 To 499
AnzProben = 8
Case 500 To 1199
AnzProben = 13
Case 1200 To 3199
AnzProben = 20
Case 3200 To 9999
AnzProben = 32
Case Else
AnzProben = 50
End Select
Case Else
AnzProben = „“
End Select
End Function
Function FehlerErlaubt(Anzahl, Pruefart)
Select Case Pruefart
Case „vereinfacht“
Select Case Anzahl
Case 1 To 8
FehlerErlaubt= 2
Case 9 To 149
FehlerErlaubt= 3
Case 150 To 279
FehlerErlaubt= 5
Case 280 To 499
FehlerErlaubt= 8
Case 500 To 1199
FehlerErlaubt= 13
Case 1200 To 3199
FehlerErlaubt= 20
Case 3200 To 9999
FehlerErlaubt= 32
Case Else
FehlerErlaubt= 50
End Select
Case „normal“
Select Case Anzahl
Case 1 To 8
FehlerErlaubt= 2
Case 9 To 149
FehlerErlaubt= 3
Case 150 To 279
FehlerErlaubt= 5
Case 280 To 499
FehlerErlaubt= 8
Case 500 To 1199
FehlerErlaubt= 13
Case 1200 To 3199
FehlerErlaubt= 20
Case 3200 To 9999
FehlerErlaubt= 32
Case Else
FehlerErlaubt= 50
End Select
Case „verschärft“
Select Case Anzahl
Case 1 To 8
FehlerErlaubt= 2
Case 9 To 149
FehlerErlaubt= 3
Case 150 To 279
FehlerErlaubt= 5
Case 280 To 499
FehlerErlaubt= 8
Case 500 To 1199
FehlerErlaubt= 13
Case 1200 To 3199
FehlerErlaubt= 20
Case 3200 To 9999
FehlerErlaubt= 32
Case Else
FehlerErlaubt= 50
End Select
Case Else
FehlerErlaubt= „“
End Select
End Function
Function FehlerRueckweisung(Anzahl, Pruefart)
Select Case Pruefart
Case „vereinfacht“
Select Case Anzahl
Case 1 To 8
FehlerRueckweisung= 2
Case 9 To 149
FehlerRueckweisung= 3
Case 150 To 279
FehlerRueckweisung= 5
Case 280 To 499
FehlerRueckweisung= 8
Case 500 To 1199
FehlerRueckweisung= 13
Case 1200 To 3199
FehlerRueckweisung= 20
Case 3200 To 9999
FehlerRueckweisung= 32
Case Else
FehlerRueckweisung= 50
End Select
Case „normal“
Select Case Anzahl
Case 1 To 8
FehlerRueckweisung= 2
Case 9 To 149
FehlerRueckweisung= 3
Case 150 To 279
FehlerRueckweisung= 5
Case 280 To 499
FehlerRueckweisung= 8
Case 500 To 1199
FehlerRueckweisung= 13
Case 1200 To 3199
FehlerRueckweisung= 20
Case 3200 To 9999
FehlerRueckweisung= 32
Case Else
FehlerRueckweisung= 50
End Select
Case „verschärft“
Select Case Anzahl
Case 1 To 8
FehlerRueckweisung= 2
Case 9 To 149
FehlerRueckweisung= 3
Case 150 To 279
FehlerRueckweisung= 5
Case 280 To 499
FehlerRueckweisung= 8
Case 500 To 1199
FehlerRueckweisung= 13
Case 1200 To 3199
FehlerRueckweisung= 20
Case 3200 To 9999
FehlerRueckweisung= 32
Case Else
FehlerRueckweisung= 50
End Select
Case Else
FehlerRueckweisung= „“
End Select
End Function
'---------------------------------------
Habe es nicht gross getestet sollte mit den richtigen Zahlen aber gehen.
Es geht sicher noch eleganter… aber du musst es ja auch noch anpassen können.
Viel Spass
Gerold