Ich kopier mal den bisherigen Syntax rein. Funktioniert für einen
bestimmten Zeitpukt.
Option Explicit
Dim arMonat
Dim iBreitengr As Integer
Dim iBreitenGrad As Integer
Dim iBreitenmin As Integer
Dim iBreitensec As Integer
Dim iLaengengr As Integer
Dim iLaengenGrad As Integer
Dim iLaengenmin As Integer
Dim iLaengensec As Integer
Dim iDatumDay As Integer
Dim iDatumMonth As Integer
Dim iTagNr As Integer
Dim iUhrzeitStd As Integer
Dim iUhrzeitMin As Integer
Dim iTagesMin As Integer
Dim iNeigungswinkel As Integer
Dim iAzimutwinkel As Integer
Dim iDeklination As Double
Dim iZeitgleichung As Double
Dim iEinstrahlwinkel As Double
Dim PHI As Double
Dim iStrahlungsenergie As Integer
Dim iSonnenZeit As Double
Dim iStundenWinkel As Double
Dim iZeitdifferenz As Double
Dim iAufgangMez As Double
Dim iUntergangMez As Double
Dim arTageseinstrahlung(1, 24) As Integer 'Tageseinstrahlung Diagramm
Dim pi As Currency
Dim tmp As Double
Private Sub Command2_Click()
If Ortsauswahl = „Konstanz“ Then
tbBreitengrad(1).Text = „47“
tbBreitenmin(5).Text = „40“
tbBreitensec(6).Text = „5“
tbLaengengrad(2).Text = „9“
tbLaengenmin(3).Text = „10“
tbLaengensec(4).Text = „11“
End If
If Ortsauswahl = „München“ Then
tbBreitengrad(1).Text = „48“
tbBreitenmin(5).Text = „8“
tbBreitensec(6).Text = „5“
tbLaengengrad(2).Text = „11“
tbLaengenmin(3).Text = „34“
tbLaengensec(4).Text = „11“
End If
If Ortsauswahl = „Stuttgart“ Then
tbBreitengrad(1).Text = „48“
tbBreitenmin(5).Text = „47“
tbBreitensec(6).Text = „12“
tbLaengengrad(2).Text = „9“
tbLaengenmin(3).Text = „11“
tbLaengensec(4).Text = „4“
End If
If Ortsauswahl = „New York“ Then
tbBreitengrad(1).Text = „40“
tbBreitenmin(5).Text = „43“
tbBreitensec(6).Text = „6“
tbLaengengrad(2).Text = „74“
tbLaengenmin(3).Text = „1“
tbLaengensec(4).Text = „15“
End If
If Ortsauswahl = „Berlin“ Then
tbBreitengrad(1).Text = „52“
tbBreitenmin(5).Text = „30“
tbBreitensec(6).Text = „0“
tbLaengengrad(2).Text = „13“
tbLaengenmin(3).Text = „20“
tbLaengensec(4).Text = „15“
End If
End Sub
Private Sub Form_Load()
'Ortsauswahl
Ortsauswahl.AddItem „Konstanz“
Ortsauswahl.AddItem „München“
Ortsauswahl.AddItem „Stuttgart“
Ortsauswahl.AddItem „New York“
Ortsauswahl.AddItem „Berlin“
'Zeit h
ZeitStd(0).AddItem „1“
ZeitStd(0).AddItem „2“
ZeitStd(0).AddItem „3“
ZeitStd(0).AddItem „4“
ZeitStd(0).AddItem „5“
ZeitStd(0).AddItem „6“
ZeitStd(0).AddItem „7“
ZeitStd(0).AddItem „8“
ZeitStd(0).AddItem „9“
ZeitStd(0).AddItem „10“
ZeitStd(0).AddItem „11“
ZeitStd(0).AddItem „12“
ZeitStd(0).AddItem „13“
ZeitStd(0).AddItem „14“
ZeitStd(0).AddItem „15“
ZeitStd(0).AddItem „16“
ZeitStd(0).AddItem „17“
ZeitStd(0).AddItem „18“
ZeitStd(0).AddItem „19“
ZeitStd(0).AddItem „20“
ZeitStd(0).AddItem „21“
ZeitStd(0).AddItem „22“
ZeitStd(0).AddItem „23“
ZeitStd(0).AddItem „24“
'Zeit min
ZeitMin(1).AddItem „0“
ZeitMin(1).AddItem „5“
ZeitMin(1).AddItem „10“
ZeitMin(1).AddItem „15“
ZeitMin(1).AddItem „20“
ZeitMin(1).AddItem „25“
ZeitMin(1).AddItem „30“
ZeitMin(1).AddItem „35“
ZeitMin(1).AddItem „40“
ZeitMin(1).AddItem „45“
ZeitMin(1).AddItem „50“
ZeitMin(1).AddItem „55“
'DatumTag
DatumTag.AddItem „1“
DatumTag.AddItem „2“
DatumTag.AddItem „3“
DatumTag.AddItem „4“
DatumTag.AddItem „5“
DatumTag.AddItem „6“
DatumTag.AddItem „7“
DatumTag.AddItem „8“
DatumTag.AddItem „9“
DatumTag.AddItem „10“
DatumTag.AddItem „11“
DatumTag.AddItem „12“
DatumTag.AddItem „13“
DatumTag.AddItem „14“
DatumTag.AddItem „15“
DatumTag.AddItem „16“
DatumTag.AddItem „17“
DatumTag.AddItem „18“
DatumTag.AddItem „19“
DatumTag.AddItem „20“
DatumTag.AddItem „21“
DatumTag.AddItem „22“
DatumTag.AddItem „23“
DatumTag.AddItem „24“
DatumTag.AddItem „25“
DatumTag.AddItem „26“
DatumTag.AddItem „27“
DatumTag.AddItem „28“
DatumTag.AddItem „29“
DatumTag.AddItem „30“
DatumTag.AddItem „31“
'DatumMonat
DatumMonat(3).AddItem „1“
DatumMonat(3).AddItem „2“
DatumMonat(3).AddItem „3“
DatumMonat(3).AddItem „4“
DatumMonat(3).AddItem „5“
DatumMonat(3).AddItem „6“
DatumMonat(3).AddItem „7“
DatumMonat(3).AddItem „8“
DatumMonat(3).AddItem „9“
DatumMonat(3).AddItem „10“
DatumMonat(3).AddItem „11“
DatumMonat(3).AddItem „12“
End Sub
Private Sub Command1_Click()
’ Einlesen der Textfelder
iDatumDay = DatumTag.Text
iBreitenGrad = tbBreitengrad(1).Text
iBreitenmin = tbBreitenmin(5).Text
iBreitensec = tbBreitensec(6).Text
iLaengenGrad = tbLaengengrad(2).Text
iLaengenmin = tbLaengenmin(3).Text
iLaengensec = tbLaengensec(4).Text
iDatumMonth = DatumMonat(3).Text
iUhrzeitStd = ZeitStd(0).Text
iUhrzeitMin = ZeitMin(1).Text
iNeigungswinkel = Neigung.Text
iAzimutwinkel = Azimut.Text
pi = 3.141592654
'Anpassung der Variablen
'Tag im Jahr
arMonat = Array(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304,
334, 365)
iTagNr = arMonat(iDatumMonth - 1) + iDatumDay
'Tagesminuten
iTagesMin = iUhrzeitStd * 60 + iUhrzeitMin
'Breitengrad
iBreitengr = iBreitenGrad + ((iBreitenmin + (iBreitensec / 60)) /
60)
'Laengengrad
iLaengengr = iLaengenGrad + ((iLaengenmin + (iLaengensec / 60)) /
60)
'Formeln - Deklination
tmp = 360 * (pi / 180) * ((284 + iTagNr) / 365)
iDeklination = ((23.45 * (pi / 180)) * Sin((tmp))) * (180 / pi)
'Sonnenaufgang h=-50 Bogenminuten = -0.0145
'Zeitdifferenz
iZeitdifferenz = 12 * ((Cos((Sin(-0.0145)) ^ -1) - Sin(0.9163) *
Sin(iDeklination)) / (Cos(0.9163) * Cos(iDeklination))) / pi
'Zeitgleichung
tmp = ((iTagNr - 81) * 0.989 * (pi / 180))
iZeitgleichung = 9.87 * Sin(2 * tmp) - 7.53 * Cos(tmp) - 1.5 *
Sin(tmp)
'MEZ in dezimal
iAufgangMez = (12 - iZeitdifferenz) + (15 - iLaengenGrad) * 4 /
60
'Untergang MEZ in dezimal
iUntergangMez = (12 + iZeitdifferenz) - (15 - iLaengenGrad) * 4 /
60
'Sonnenzeit
iSonnenZeit = iTagesMin + (4 * (15 - iLaengengr)) +
iZeitgleichung
'Stundenwinkel
iStundenWinkel = 0.25 * (720 - iSonnenZeit)
'Einstrahlwinkel
tmp = (pi / 180)
PHI = (Cos(iNeigungswinkel * (tmp)) * Sin(iBreitengr * (tmp)) -
Cos(iBreitengr * (tmp)) * Cos(iAzimutwinkel * (tmp)) *
Sin(iNeigungswinkel * (tmp))) * Sin(iDeklination * (tmp)) +
(Sin(iBreitengr * (tmp)) * Cos(iAzimutwinkel * (tmp)) *
Sin(iNeigungswinkel * (tmp)) + Cos(iNeigungswinkel * (tmp)) *
Cos(iBreitengr * (tmp))) * Cos(iDeklination * (tmp)) *
Cos(iStundenWinkel * (tmp)) + Sin(iAzimutwinkel * (tmp)) *
Sin(iNeigungswinkel * (tmp)) * Cos(iDeklination * (tmp)) *
Sin(iStundenWinkel * (tmp))
iEinstrahlwinkel = ((PHI))
'Strahlungsenergie
iStrahlungsenergie = iEinstrahlwinkel * 1357
'Ergebnis
If (iStrahlungsenergie > 0) Then
tbErg.Text = iStrahlungsenergie
Else
tbErg.Text = iStrahlungsenergie
End If
'Zwischenergebnisse
TagNr.Text = iTagNr
Deklination.Text = iDeklination
Zeitgl.Text = iZeitgleichung
SonnenZeit.Text = iSonnenZeit
Stundenwinkel.Text = iStundenWinkel
Sonnenaufgang.Text = iAufgangMez
Sonnenuntergang.Text = iUntergangMez
cosphi.Text = PHI
'MSChart definieren
With MSChart1.DataGrid
.ColumnCount = 1
.RowCount = 7
.SetData 1, 1, -800, False
.SetData 2, 1, -200, False
.SetData 3, 1, 100, False
.SetData 4, 1, 800, False
.SetData 5, 1, 900, False
.SetData 6, 1, 700, False
.SetData 7, 1, -50, False
End With
End Sub
Private Sub tbTag_Change()
End Sub
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X
As Single, Y As Single)
Select Case Neigung(0).ListIndex
End Sub
Private Sub VScroll2_Change()
End Sub