Overfør ugedagsværdi til andet ark

Makroen er baseret på, at man har et indtastningsark og et registreringsark. I registreringsarket findes 7 kolonner med ugedagenes navne som overskrifter (kolonne A til G). I indtastningsarket tastes dagligt en værdi i A1. Når der tastes i A1 i indtastningsarket, indsættes to værdier i registreringsarket, dels datoen for overførslen (i første tomme linie for den pågældende ugedag) dels værdien fra A1 i indtastningarket, der indsættes lige under datoen. Et ark, der er i brug, kunne have dette udseende:

Mandag Tirsdag Onsdag Torsdag Fredag Lørdag Søndag
16-06-2008 10-06-2008 18-06-2008 26-06-2008 27-06-2008 14-06-2008 01-06-2008
123 26 300 14 17 41 12
17-06-2008   26-06-2008      
28   23      

Koden skal placeres i arkets kodemodul:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("a1")) Is Nothing Then
        Var1 = Sheets(1).Range("a1").Value
        Select Case Weekday(Date, vbMonday)
            Case Is = 1
                Sheets(2).Range("a65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("a65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 2
                Sheets(2).Range("b65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("b65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 3
                Sheets(2).Range("c65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("c65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 4
                Sheets(2).Range("d65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("d65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 5
                Sheets(2).Range("e65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("e65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 6
                Sheets(2).Range("f65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("f65536").End(xlUp).Offset(1, 0).Value = Var1
            Case Is = 7
                Sheets(2).Range("g65536").End(xlUp).Offset(1, 0).Value = Date
                Sheets(2).Range("g65536").End(xlUp).Offset(1, 0).Value = Var1
        End Select
    End If
End Sub

- Retur til makroer -
- Retur til Excel -