Thema Datum  Von Nutzer Rating
Antwort
Rot Jahrestag Ausgabe
10.04.2014 16:09:27 alex
NotSolved
10.04.2014 18:03:14 Gast32343
NotSolved
10.04.2014 19:45:32 Gast32343
NotSolved
10.04.2014 19:54:20 Gast32343
NotSolved
10.04.2014 20:55:09 Gast68682
NotSolved
10.04.2014 22:23:33 Gast42501
NotSolved
10.04.2014 18:56:11 gabi
NotSolved
13.04.2014 09:29:47 Holger
NotSolved

Ansicht des Beitrags:
Von:
alex
Datum:
10.04.2014 16:09:27
Views:
1537
Rating: Antwort:
  Ja
Thema:
Jahrestag Ausgabe

Hallo zusammen,

 

In der nächsten Woche habe ich in der Schule eine Prüfung über VBA. Nun haben wir einige Übungen dazu gemacht, kann es jedoch noch nicht so gut, dass ich mein Problem selber lösen kann.

Von einem Kollege habe ich Erfahren, dass sie an einer Prüfung folgendes Programm schreiben mussten.

Man gibt ein Datum ein (z.B. 29.02) und das VBA Programm gibt dir an welchen Tag im Jahr das ist. Hier z.B. der 60. Tag im Jahr...

Dieses Programm habe ich bis anhin so geschrieben:

Option Explicit

Sub Tag_im_Jahr_finden()
  Dim intTag As Integer
  Dim byteTagLoop As Byte
  Dim intMonat As Integer
  Dim byteMonatLoop As Byte
  Dim intTageMonat As Integer
  Dim intLoesung As Integer

  byteTagLoop = 0
  Do While byteTagLoop < 1
    intTag = InputBox("Geben Sie den Tag ein (ganze Zahl):")
    If (intTag > 0) Then
      If (intTag < 32) Then
        byteTagLoop = 2
      Else
        MsgBox ("Ein Tag im Monat (1-31)")
        byteTagLoop = 0
      End If
    Else
      MsgBox ("Ein Tag im Monat (1-31)")
      byteTagLoop = 0
    End If
  Loop

  byteMonatLoop = 0
  Do While byteMonatLoop < 1
    intMonat = InputBox("Geben Sie den Monat ein (ganze Zahl):")
    If (intMonat > 0) Then
      If (intMonat < 13) Then
        byteMonatLoop = 2
      Else
        MsgBox ("Ein Monat im Jahr (1-12)")
        byteMonatLoop = 0
      End If
    Else
      MsgBox ("Ein Monat im Jahr (1-12)")
      byteMonatLoop = 0
    End If
  Loop

  If (intMonat = 1) Then
    intTageMonat = 0
  Else
    If (intMonat = 2) Then
      intTageMonat = 31
    Else
      If (intMonat = 3) Then
        intTageMonat = 59
      Else
        If (intMonat = 4) Then
          intTageMonat = 90
        Else
          If (intMonat = 5) Then
            intTageMonat = 120
          Else
            If (intMonat = 6) Then
              intTageMonat = 151
            Else
              If (intMonat = 7) Then
                intTageMonat = 181
              Else
                If (intMonat = 8) Then
                  intTageMonat = 212
                Else
                  If (intMonat = 9) Then
                    intTageMonat = 242
                  Else
                    If (intMonat = 10) Then
                      intTageMonat = 273
                    Else
                      If (intMonat = 11) Then
                        intTageMonat = 303
                      Else
                        intTageMonat = 334
                      End If
                    End If
                  End If
                End If
              End If
            End If
          End If
        End If
      End If
    End If
  End If

  intLoesung = intTageMonat + intTag
  MsgBox ("Ihr Datum: " & intTag & "." & intMonat & " ist umgerechnet der " & intLoesung & ". Tag im Jahr")
End Sub

 

 

 

Ich weiss das ist nicht eine optimale Lösung und darum möchte ich euch Fragen wie das Programm am besten/einfachsten funktionieren könnte.

Um eine komplett Lösung wäre ich sehr Dankbar!

 

Vielen Dank für euren Aufwand

Gruss, Alex


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 Jahrestag Ausgabe
10.04.2014 16:09:27 alex
NotSolved
10.04.2014 18:03:14 Gast32343
NotSolved
10.04.2014 19:45:32 Gast32343
NotSolved
10.04.2014 19:54:20 Gast32343
NotSolved
10.04.2014 20:55:09 Gast68682
NotSolved
10.04.2014 22:23:33 Gast42501
NotSolved
10.04.2014 18:56:11 gabi
NotSolved
13.04.2014 09:29:47 Holger
NotSolved