Hallo zusammen,
im Zuge einer Studienarbeit muss ich ein paar VBA-Zeilen programmieren.
Grundlage ist die Berechnung verschiedener Zustandsgrößen in unterscheidung verschiedener Temperatur und Druckbereiche durch verschiedene Formeln.
Dazu habe ich eine einfache aufrufbare Funktion (Public Function) runtergeschrieben:
Public Function h(T As Double, p As Double) As Double
If T > 273.15 And T <= 623.15 Then
gren_4 = [..]
pb_23 = Null
ElseIf T > 623.15 And T <= 863.15 Then
pb_23 = [..]
gren_4 = Null
End If
If T <= 623.15 And T >= 273.15 Then
If p <= 100 And p > gren_4 Then
Bereich = 1
ElseIf p < gren_4 And p > 0 Then
Bereich = 2
End If
ElseIf T <= 863.15 And T > 623.15 Then
If p <= 100 And p > pb23 Then
Bereich = 3
ElseIf p < pb23 And p > 0 Then
Bereich = 2
End If
ElseIf T > 863.15 And T <= 1073.15 And p > 0 And p <= 100 Then
Bereich = 2
ElseIf T > 1073.15 And T <= 2273.15 And p > 0 And p <= 50 Then
Bereich = 5
End If
Select Case Bereich
Case 1
For i = 0 To 33
[..]
Next i
h = [..]
Case 2
For i = 0 To 42
[..]
Next i
For i = 0 To 8
[..]
Next i
h = [..]
Case 3
[..]
Case 5
For i = 0 To 5
[..]
Next i
For i = 0 To 5
[..]
Next i
h = [..]
End Select
End Function
In den einzelnen Schleifen stehen jeweils nur normale Funktionen mit Grundrechenarten, ebenfalls für die Zuweisung von "h" in jedem Case. Dort habe ich alles auf logische- oder Tippfehler abgesucht und überprüft, das passt alles.
Leider bekomme ich nur beim Aufrufen der Funktion die Fehlermeldung "Typenkonflikt".
Hat vielleicht irgendjemand eine Idee woran es liegen könnte und kann mir helfen?
Danke und LG Tom
|