Загрузка данных


Sub TeeSadepaivataulukko()

    Dim ws As Worksheet
    Dim i As Integer
    Dim minRivi As Long, maxRivi As Long
    Dim minArvo As Double, maxArvo As Double

    Set ws = ActiveSheet

    ' 1. Kuukausien otsikot
    ws.Range("B13").Value = "tammi"
    ws.Range("C13").Value = "helmi"
    ws.Range("D13").Value = "maalis"
    ws.Range("E13").Value = "huhti"
    ws.Range("F13").Value = "touko"
    ws.Range("G13").Value = "kesä"
    ws.Range("H13").Value = "heinä"
    ws.Range("I13").Value = "elo"
    ws.Range("J13").Value = "syys"
    ws.Range("K13").Value = "loka"
    ws.Range("L13").Value = "marras"
    ws.Range("M13").Value = "joulu"
    ws.Range("N13").Value = "Koko vuosi"

    ' 2. Sarakkeiden leveys
    ws.Columns("B:M").ColumnWidth = 8

    ' 3. Lasketaan koko vuoden sadepäivien summa
    ' Kaupunkien rivit 14–23
    For i = 14 To 23
        ws.Cells(i, 14).Formula = "=SUM(B" & i & ":M" & i & ")"
    Next i

    ' 4. Etsitään pienin ja suurin vuosimäärä
    minArvo = Application.WorksheetFunction.Min(ws.Range("N14:N23"))
    maxArvo = Application.WorksheetFunction.Max(ws.Range("N14:N23"))

    minRivi = Application.WorksheetFunction.Match(minArvo, ws.Range("N14:N23"), 0) + 13
    maxRivi = Application.WorksheetFunction.Match(maxArvo, ws.Range("N14:N23"), 0) + 13

    ' Poistetaan vanhat värit
    ws.Range("A14:N23").Interior.Pattern = xlNone

    ' Värjätään vähiten sateinen kaupunki
    ws.Range("A" & minRivi & ":N" & minRivi).Interior.Color = RGB(173, 216, 230)

    ' Värjätään eniten sateinen kaupunki
    ws.Range("A" & maxRivi & ":N" & maxRivi).Interior.Color = RGB(255, 200, 200)

    MsgBox "Valmis! Kuukaudet, vuosittaiset summat ja vähiten/eniten sateiset kaupungit on käsitelty.", vbInformation

End Sub