Thema Datum  Von Nutzer Rating
Antwort
Rot Negative Werte in Textboxen erzeugen Laufzeitfehler '5
12.12.2013 10:37:39 Chris
NotSolved
12.12.2013 11:38:34 Holger
NotSolved
12.12.2013 12:10:52 Gast4385
NotSolved
12.12.2013 12:42:20 Holger
NotSolved
12.12.2013 18:31:07 Chris
NotSolved

Ansicht des Beitrags:
Von:
Chris
Datum:
12.12.2013 10:37:39
Views:
1661
Rating: Antwort:
  Ja
Thema:
Negative Werte in Textboxen erzeugen Laufzeitfehler '5

Hallo, ich habe ein kleines Problem mit meinem Berechnungsprogramm und finde den fehler nicht

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
Dim ß As Double, DB As Double, DR As Double, Ep As Double, P1 As Double, P2 As Double
Dim E As Double, Rho1 As Double, PW As Double, P1abs As Double, Pamb As Double, T1 As Double
Dim my As Double, Tr As Double, c As Double, my0 As Double, Var1 As Double, Var2 As Double
Dim Calt As Double, Re As Double, A As Double, qm As Double, qv As Double, sg As Double
Dim C_neu As Double, Ai As Double, Re_i As Double, pi As Double, Var3 As Double, Var4 As Double
Dim counter As Integer
 
 
DB = TextBox2.Value / 1000             'Innendurchmesser Blende in Meter
DR = TextBox1.Value / 1000             'Innendurchmesser Rohr in Meter
P1 = TextBox4.Value * 10 ^ 5           'Druck vor der Messblende in Pascal
P2 = TextBox5.Value * 10 ^ 5           'Druck vor der Armatur in Pascal
Pamb = TextBox7.Value * 10 ^ 5         'Umgebungsdruck in Pascal
PW = TextBox6.Value * (10 ^ 5)         'Wirkdruck in Pascal
T1 = TextBox3.Value + 273.15           'Umgebungstemperatur in Pascal
 
 
'Berechnung der Variablen für die Iteration
 
P1abs = P1 + Pamb                      'Absolutdruck vor der Blende
 
Rho1 = P1abs / ((287 * T1))            'Dichte der Luft in Abhaengigkeit der Temperatur
 
ß = DB / DR                            'Verhaeltnis Innendurchmesserblende zu Innendurchmesser Rohr
E = 1 / Sqr(1 - ß ^ 4)                 'Vorschgeschwindigkeitsfaktor
 
Var1 = ß ^ 4
Var2 = ß ^ 8
 
'Berechnung Expansionszahl
Ep = 1 - (0.351 + 0.256 * Var1 + (0.93 * Var2)) * (1 - ((P2 / P1) ^ (1 / 1.4)))
 
 
 
Re = 10 ^ 5                            'Reynoldszahlstartwert
counter = 0                            'Schleifenzaehler
pi = 3.14159265358979
Var3 = ß ^ 2                           'Variable
Var4 = ß ^ 3.5                         'Variable
 
                                                                                    
   'Hauptrechnung
 
   Do
    
   'Durchflusskoeffizient mit Startwert 10^5 berechnen
    
   Calt = 0.5961 + 0.0261 * Var3 - 0.216 * Var2 + 0.000521 * ((10 ^ 6 * ß) / Re) ^ 0.7 + (0.0188 + 0.0063 * A) * (ß ^ 3.5)      * (10 ^ 6 / Re) ^ 0.3
 
   A = (19000 * ß / Re) ^ 0.8
    
   'Gleichung für Berechnung massenstrom in kg/h
   qm = Ep * Calt * (pi / 4 * DB ^ 2) * E * ((2 * PW * Rho1) ^ 0.5) * 3600
 
   'Berechnung des Volumenstroms
   qv = qm / Rho1
    
   'Berechnung der Strömungsgeschwindigkeit
   sg = qv / (3.14 / 4 * DR ^ 2) / 3600
 
 
   'Sutherland-Gesetz Berechnung der dynamischen Viskosität
 
    Tr = 291.15                            'Referenztemperatur in Kelvin
    my0 = 18.27 * (10 ^ -6)                'Referenz-Viskosität bei Referenztemperatur (Tr) in Pa*s
    c = 120                                'Sutherland Konstante
 
    my = my0 * (Tr + c) / (T1 + c) * ((T1 / Tr) ^ (3 / 2))
    
    'Berechnung der neuen Reynoldszahl
    Re_i = sg * DR * Rho1 / my
     
    'Durchflusskoeffizient mit neuem Wert der Reynoldszahl berechnen
     
    C_neu = 0.5961 + 0.0261 * (ß ^ 2) - 0.216 * (ß ^ 8) + 0.000521 * (10 ^ 6 * ß / Re_i) ^ 0.7 + (0.0188 + 0.0063 * A) * (ß ^ 3.5) * (10 ^ 6 / Re_i) ^ 0.3
    A = (19000 * ß / Re_i) ^ 0.8
 
    'Schleifenzaehler
     
    counter = counter + 1
       
      'Bedingung fuer Abfrage der Werte um Iteration zu beenden
       
      If Abs(C_neu - Calt) / Calt < 10 ^ -6 Then
         Exit Do
         Else
         Re = Re_i
      End If
 
 
   Loop

Immer wenn ich in die Textboxen für  die Drücke einen negativen Wert einsetze stürzt das Programm ab und es erscheint folgende Meldung

 

'Laufzeitfehler 5 Ungültiger Prozeduraufruf oder ungültiges Element

 

Kann mir vielleicht einer weiterhelfen?

 

Besten Gruß


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Negative Werte in Textboxen erzeugen Laufzeitfehler '5
12.12.2013 10:37:39 Chris
NotSolved
12.12.2013 11:38:34 Holger
NotSolved
12.12.2013 12:10:52 Gast4385
NotSolved
12.12.2013 12:42:20 Holger
NotSolved
12.12.2013 18:31:07 Chris
NotSolved