If-Abfrage zieht nicht
21.02.2008 13:20:17
Olaf
ich habe folgendes Problem mit einer if-Abfrage:
Obwohl LC gleich dem Wert aus Cells(Ez + Az, Es + 2).Value ist, wird die MsgBox angesprochen. Ich habe beide Werte mit 10000000 multipliziert, aber keine Unterschiede feststellen können. Komisch ist auch, dass dieser "Fehler" nicht immer reproduziert werden kann, sprich bei anderen Eingangswerten bei denen die Werte von LC und Cells(Ez + Az, Es + 2).Value gleich sind, wird die if-Abfrage korrekt behandelt.
Ich hoffe eine(r) von Euch kann mir helfen. Danke.
Auszug aus dem Listing:
Sub WindlastenBerechnen()
'Variablen deklarieren
Dim Ez As Long 'Erste Zeile
Dim Lz As Long 'Letzte Zeile
Dim Az As Long 'Anzahl Zeilen
Dim Es As Long 'Erste Spalte
Dim LaengeWindA As Double 'Länge Windbereich A
Dim LaengeWindB As Double 'Länge Windbereich B
Dim LaengeWindC As Double 'Länge Windbereich C
Dim LA As Double 'absolute Länge Bereich A
Dim LB As Double 'absolute Länge Bereich A+B
Dim LC As Double 'absolute Länge Bereich A+B+C
'Werte einlesen
LaengeWindA = Range("d8").Value
LaengeWindB = Range("d9").Value
LaengeWindC = Range("d10").Value
'Positionen der ersten und letzten Zelle bestimmen
Ez = Range("Start").Row
Es = Range("start").Column
Lz = Cells(Rows.Count, Range("Start").Column).End(xlUp).Row
'Hilfswerte berechnen
Az = Lz - Ez
LA = LaengeWindA
LB = LA + LaengeWindB
LC = LB + LaengeWindC
'Meldung ausgeben wenn Gesamtmaß größer ist als Länge Bereich A-C
'hier passiert das ungewöhnliche!!
If Cells(Ez + Az, Es + 2).Value LC Then
MsgBox ("Bitte Eingaben überprüfen:" & vbLf & "Gesamtmaß stimmt nicht mit den Bereichen A-C überein!")
End If