Probleme mit VB Zeiteinteilung in EXEL/ Befehle dafür fehlen

  • Excel

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von stella.

    Probleme mit VB Zeiteinteilung in EXEL/ Befehle dafür fehlen

    Hallo,
    ich habe folgendes Problem:
    Ich muss eine Zeitreihe in diverse Abschnitte einteilen.Dazu existiert bereits ein Makro, welches das tut - es differenziert die Zeitreihe in Jahreszeiten, und das sieht folgendermaßen aus:

    i = 1
    While i <= UBound(Data, 2)
    If CStr(Round(Data(3, i), 1)) = Merkmal Then
    If Data(0, i) <> "" Then

    Datum = Split(Data(0, i), ".")
    If Datum(1) = "03" Or Datum(1) = "04" Or Datum(1) = "05" Then
    Select Case Data(1, i)
    Case "1"
    count_spring(0) = count_spring(0) + 1
    Case "2"
    count_spring(1) = count_spring(1) + 1
    Case "3"
    count_spring(2) = count_spring(2) + 1
    Case "4"
    count_spring(3) = count_spring(3) + 1
    Case "5"
    count_spring(4) = count_spring(4) + 1
    Case "6"
    count_spring(5) = count_spring(5) + 1
    Case "7"
    count_spring(6) = count_spring(6) + 1
    Case "8"
    count_spring(7) = count_spring(7) + 1
    Case "9"
    count_spring(8) = count_spring(8) + 1
    Case "10"
    count_spring(9) = count_spring(9) + 1
    End Select
    End If

    If Datum(1) = "06" Or Datum(1) = "07" Or Datum(1) = "08" Then
    Select Case Data(1, i)
    Case "1"
    count_summer(0) = count_summer(0) + 1
    Case "2"
    count_summer(1) = count_summer(1) + 1
    Case "3"
    count_summer(2) = count_summer(2) + 1
    Case "4"
    count_summer(3) = count_summer(3) + 1
    Case "5"
    count_summer(4) = count_summer(4) + 1
    Case "6"
    count_summer(5) = count_summer(5) + 1
    Case "7"
    count_summer(6) = count_summer(6) + 1
    Case "8"
    count_summer(7) = count_summer(7) + 1
    Case "9"
    count_summer(8) = count_summer(8) + 1
    Case "10"
    count_summer(9) = count_summer(9) + 1
    End Select
    End If

    If Datum(1) = "09" Or Datum(1) = "10" Or Datum(1) = "11" Then
    Select Case Data(1, i)
    Case "1"
    count_autumn(0) = count_autumn(0) + 1
    Case "2"
    count_autumn(1) = count_autumn(1) + 1
    Case "3"
    count_autumn(2) = count_autumn(2) + 1
    Case "4"
    count_autumn(3) = count_autumn(3) + 1
    Case "5"
    count_autumn(4) = count_autumn(4) + 1
    Case "6"
    count_autumn(5) = count_autumn(5) + 1
    Case "7"
    count_autumn(6) = count_autumn(6) + 1
    Case "8"
    count_autumn(7) = count_autumn(7) + 1
    Case "9"
    count_autumn(8) = count_autumn(8) + 1
    Case "10"
    count_autumn(9) = count_autumn(9) + 1
    End Select
    End If


    If Datum(1) = "12" Or Datum(1) = "01" Or Datum(1) = "02" Then
    Select Case Data(1, i)
    Case "1"
    count_winter(0) = count_winter(0) + 1
    Case "2"
    count_winter(1) = count_winter(1) + 1
    Case "3"
    count_winter(2) = count_winter(2) + 1
    Case "4"
    count_winter(3) = count_winter(3) + 1
    Case "5"
    count_winter(4) = count_winter(4) + 1
    Case "6"
    count_winter(5) = count_winter(5) + 1
    Case "7"
    count_winter(6) = count_winter(6) + 1
    Case "8"
    count_winter(7) = count_winter(7) + 1
    Case "9"
    count_winter(8) = count_winter(8) + 1
    Case "10"
    count_winter(9) = count_winter(9) + 1
    End Select
    End If


    End If
    Select Case Data(1, i)


    So, mein Problem ist nun: ich würde diese Zeitreihe gerne Dekadenweise (also in 10-Jahres-Abschnitten) einteilen, und nicht mehr jahreszeitenabhängig. In Spalte A der EXEL-Tabelle steht das Datum. DIeses wurde ja bisher nach dem Monat ausgesplittet. aber wie soll das nun im 10-Jahres-Rhytmus gehen, wie lege ich da die Grenzen fest?
    Hat jemand eine Idee?
    Gruß,Stella
    Dein Code enthält viele redundante Zeilen, die sich durch Schleifen und Funktionen auf 25% reduzieren lassen würden ;)
    Mal davon abgesehen versteh ich das Problem nicht ganz, warum machst du nicht aus den Jahreszeiten die Jahre, wäre dann eine neue Dimension im Array (also 2-dimensional)
    Gruß, Agent Smith 8-)

    activeFlags = (lazy OR weary)

    Lemgo-Verschwörung | Mathematics | VB-Paradise in blau
    Ja gut, mag sein, aber vielleicht kann das jemand nochmal halbwegs frauen-freundlich erklären;) soooviel Ahnung habe ich davon nämlich nicht - aber es funktioniert wenigstens:D also so wie es da steht teilt das makro meine zeitreihe nur in Jahreszeiten ein - ich möchte aber, dass er in jahreszeiten UND Dekaden einteilen, so dass ich nicht die Werte von Frühling, Sommer etc. übder die Gesamte Zeitspanne erhalte, sonder 10-jahres-Weise.....