Clever-Excel-Forum

Normale Version: VBA Prüfung für mehrere Varianten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Einen schönen Samstag Nachmittag Zusammen,

ich brauch mal wieder Hilfe. Folgende Konstellation (ich hoffe es wird verständlich):


Betrag 1        Betrag 2        Variante1        Variante2    Variante3   Variante4

- siehe Anhang: Bsp. Bild

(ist nur ein Auszug- Tabelle ist viel größer)

Man hat eine Tabelle wie oben- mit diesen Werten. Über VBA (Command Button) will man sich nun den entsprechenden Betrag anzeigen lassen,
also z. B. einen Betrag zwischen Betrag 1 und Betrag 2 in der Variante 3-

bei 1885,00 müsste also in der Ausgabezelle 4,29 stehen.

Jetzt könnte man dies so lösen:

With Worksheets("Tabelle1")

   Select Case .Cells(4, 13).Value
  
Case Is <= Worksheets("Tabelle1").Cells(4, 5)
       .Cells(4, 15) = Worksheets("Tabelle1").Cells(4, 6).Value
 
Case Is <= Worksheets("Tabelle1").Cells(5, 5) And Worksheets("Tabelle1").Cells(6, 15) <= 1
       .Cells(4, 15) = Worksheets("Tabelle1").Cells(5, 6).Value
      Case Else
       .Cells(4, 15) = Worksheets("Tabelle1").Cells(5, 7).Value



Gibt es eine Möglichkeit, dass die Anweisung den Betrag plus die Möglichen Varianten prüft und
dann die richtige Variante ausgibt, ohne das man jeden Fall extra schreiben muss?

LG

Basti
Hallo Bastı

am besten stellst du eine Beispieldateı mıt Fantasıedaten ıns Forum, mıt Angabe wıe dıe Lösung aussehen soll.
Unklar ıst mır ob du dıe Zellen aktiv ansprıngen wıllst, oder dıe Lösung ın der Tabelle aufgelıstet haben wıllst.

mfg Gast 123

PS  schöne Grüsse an dıe Kollegen ım Forum aus Ankara
Bitte schöne Smile
Hallo

ich sehe KEINE Beıspieldateı ....  ???

mfg Gast 123
Komisch - mom

hier- hoffe diesmal ist sie dran
Hallo,

Formel in O4: =SVERWEIS($M$4;D:K;$O$6+2)

VBA wird dazu nicht benötigt.

Gruß Uwe
Vielleicht geht es damit als Formel für die Ausgtabe:
=SVERWEIS(M4;D4:K240;5;WAHR)
Vorausgesetzt, die Werte in Spalte D sind aufsteigend angeordnet
ist zwar lieb gemeint aber ein SVerweis bringt mir nichts, 
es muss definitiv eine VBA Anwendung werden.

Ich habe noch rausgefunden das man dies mit Array und Range machen kann,
nur übersteigt dies leider mein können.

Sad
Ja sicher, mit Array und Range kannst Du es machen. Vor allem, wenn Du es schon herausgefunden hast.

Hier mein Vorschlag für ein Makro:
Code:
Private Sub CommandButton1_Click()
   Range("O4") = Application.WorksheetFunction.VLookup(Range("M4"), Range("D4:K240"), 5, True)
End Sub

Denke, das funktioniert. Teste und berichte.

Gruss, Raoul
Also erstmal vielen Dank- soweit funzt es, nur gibt er mir bei Variante 2 dann Variante 1 aus.

Welchen Bereich muss man den ändern?

LG

funzt nicht überall Sad
Seiten: 1 2