vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Fehler bei Berechnung aus TextBox 
Autor: Gambler
Datum: 06.10.11 11:33

Hallo Blackbox,

ich habe die Array wie folgt deklariert:

Dim PV() As Variant
PV = Worksheets("Erzeugung PV").Range("C2:C35042").Value
Ich gleube mitlerweie doch ehr, dass es an meiner Berechnung liegt...
diese sie mittlerweile wie folgt aus:

For i = 1 To 35041
    Überschuss(i, 1) = CDbl(PV(i, 1)) - CDbl(Last(i, 1))
 
If i = 1 Then
 
    'Wenn mehr Last als Erzeugung
    If CDbl(Überschuss(i, 1)) < 0 Then
        Überschuss(i, 1) = CDbl(Überschuss(i, 1) * (-1))
        EV(i, 1) = CDbl(PV(i, 1))
        If CDbl(Überschuss(i, 1)) >= CDbl(0) Then
        Überschuss(i, 1) = CDbl(Überschuss(i, 1)) - CDbl(Speicher(i, 1))
        Bezug(i, 1) = CDbl(Überschuss(i, 1)) - CDbl(Speicher(i, 1))
        Speicher(i, 1) = CDbl(0)
        Else
        Speicher(i, 1) = CDbl(0) - CDbl(Überschuss(i, 1))
        Überschuss(i, 1) = CDbl(0)
 
        End If
 
 
        Einspeise(i, 1) = CDbl(0)
 
    'Wenn mehr Erzeugung als Last
    Else
        Bezug(i, 1) = CDbl(0)
        If CDbl(Überschuss(i, 1)) <= CDbl(Max) Then
        Speicher(i, 1) = CDbl(Speicher(i, 1)) + CDbl(Überschuss(i, 1))
        EV(i, 1) = CDbl(Last(i, 1)) + CDbl(Überschuss(i, 1))
        Einspeise(i, 1) = CDbl(0)
        Else
        Platz = CDbl(Max) - CDbl(0)
        Speicher(i, 1) = CDbl(Max)
        EV(i, 1) = CDbl(Last(i, 1))
        Einspeise(i, 1) = CDbl(Überschuss(i, 1)) - CDbl(Platz)
 
        End If
 
    End If
 
Else
 
    'Wenn mehr Last als Erzeugung
    If CDbl(Überschuss(i, 1)) < 0 Then
        Überschuss(i, 1) = CDbl(Überschuss(i, 1) * (-1))
        EV(i, 1) = CDbl(PV(i, 1))
        If CDbl(Überschuss(i, 1)) >= CDbl(Speicher(i - 1, 1)) Then
        Überschuss(i, 1) = CDbl(Überschuss(i, 1)) - CDbl(Speicher(i - 1, 1))
        'Geändert von Überschuss auf Last
        Bezug(i, 1) = CDbl(Last(i, 1) - PV(i, 1)) - CDbl(Speicher(i - 1, 1))
        Speicher(i, 1) = CDbl(Speicher(i - 1, 1)) - CDbl(Speicher(i - 1, 1))
        Else
        Speicher(i, 1) = CDbl(Speicher(i - 1, 1)) - CDbl(Überschuss(i, 1))
        Überschuss(i, 1) = CDbl(0)
 
        End If
 
 
        Einspeise(i, 1) = CDbl(0)
 
    'Wenn mehr Erzeugung als Last
    Else
        Bezug(i, 1) = CDbl(0)
        If CDbl(Überschuss(i, 1)) <= CDbl(Max) - CDbl(Speicher(i - 1, 1)) Then
        Speicher(i, 1) = CDbl(Speicher(i - 1, 1)) + CDbl(Überschuss(i, 1))
        EV(i, 1) = CDbl(Last(i, 1)) + CDbl(Überschuss(i, 1))
 
        Einspeise(i, 1) = CDbl(0)
        Else
        Platz = CDbl(Max) - CDbl(Speicher(i - 1, 1))
        Speicher(i, 1) = CDbl(Max)
        EV(i, 1) = CDbl(Last(i, 1))
        Einspeise(i, 1) = CDbl(Überschuss(i, 1)) - CDbl(Platz)
 
        End If
 
    End If
 
End If
 
Next i
ich versuche Anhand von einer vorgegebenen Energieerzeugung (PV) und einem vorgegebenen Lastgang (Last) das Laden einer Batterie zu simulieren.

Hierbei werde die werte für den Strombezug von der Energiequelle (EV), die Einspeisung in das Netz (Einspeise), der Bezug aus dem Netz (Bezug) und dem Speicherstand (Speicher) errechnet. Der Speicherstand wird zu beginn auf 0 gesetz und durch eine Eingabe über eine TextBox begrenzt.

Ohne die Verwendung eines Speichers Funktioniert das Programm, aber sofern ich einen Wert für Speicher eintrage, sind erhebliche Fehler in der Berechnung vorhanden...

vielleicht sieht hier irgendjemand schon einen grvierenden Fehler, da ich vollkommen neu bin in sachen vba und meine ersten erfahrungen in c++ schon mehrere Jahre zurückliegen...
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Fehler bei Berechnung aus TextBox1.511Gambler04.10.11 15:24
Re: Fehler bei Berechnung aus TextBox866Zardoz04.10.11 15:34
Re: Fehler bei Berechnung aus TextBox810Gambler04.10.11 15:45
Re: Fehler bei Berechnung aus TextBox899Zardoz04.10.11 16:09
Re: Fehler bei Berechnung aus TextBox851Gambler04.10.11 16:46
Re: Fehler bei Berechnung aus TextBox882Gambler05.10.11 11:06
Re: Fehler bei Berechnung aus TextBox802Blackbox05.10.11 17:04
Re: Fehler bei Berechnung aus TextBox810Gambler06.10.11 09:23
Re: Fehler bei Berechnung aus TextBox840Blackbox06.10.11 11:26
Re: Fehler bei Berechnung aus TextBox793Gambler06.10.11 11:33
Re: Fehler bei Berechnung aus TextBox893Dirk06.10.11 13:08
Re: Fehler bei Berechnung aus TextBox794Gambler06.10.11 14:39
Re: Fehler bei Berechnung aus TextBox756Dirk06.10.11 16:21
Re: Fehler bei Berechnung aus TextBox831Gambler06.10.11 16:50
Re: Fehler bei Berechnung aus TextBox763Dirk07.10.11 08:26
Re: Fehler bei Berechnung aus TextBox766Gambler07.10.11 08:49
Re: Fehler bei Berechnung aus TextBox852Dirk07.10.11 08:54
Re: Fehler bei Berechnung aus TextBox732Gambler07.10.11 09:19
Re: Fehler bei Berechnung aus TextBox837Dirk07.10.11 09:41
Re: Fehler bei Berechnung aus TextBox807Gambler07.10.11 09:50
Re: Fehler bei Berechnung aus TextBox905Dirk07.10.11 10:03
Re: Fehler bei Berechnung aus TextBox769Gambler07.10.11 13:30

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel