Jeg lager et skjema som skal registrere utlevering og innlevering av utstyr. Det er greit nok
Det er faste enheter, med registrert dato for utlevering, og innlevering.
Navn på den som låner utstyr i kolonne B, dato ut i kolonne H og dato inn i kolonne I
Jeg har så laget en kommandoknapp, for å nullstille den enkelte rad, og overføre data til ny fane for en type logg.
Jeg har tilordnet macro til commandoknappen, en modifisert kode funnet på denne nettsiden:
Private Sub Nullstill_Click()
Dim Src As Worksheet
Dim Trg As Worksheet
Dim Rsrc As Long
Dim Rtrg As Long
Dim C As Long
Set Src = ThisWorkbook.Sheets(«Utstyr»)
Set Trg = ThisWorkbook.Sheets(«History»)
Rsrc = ActiveCell.Row
Rtrg = Trg.Cells(Trg.Rows.Count).End(xlUp).Row + 1
For C = 1 To 9
Trg.Cells(Rtrg, C).Value = Src.Cells(Rsrc, C).Value
Next
If MsgBox(«Raden ble oveført. Skal vi tømme skjemaet?», vbYesNo + vbQuestion) = vbYes Then
For C = 8 To 9
Src.Cells(Rsrc, C).Value = «»
Next
End If
End Sub
Dette fungerer halvveis. Og jeg klarer ikke finne feilen.
Det jeg ønsker er at feltene i kolonne B, H og I nullstilles på aktuell rad, og at informasjonen på raden overføres til ny fane.
Det som skjer er
- Kolonne H og I nullstilles, kolonne B blir stående (jeg finner ikke ut hvordan inkludere kolonne B i formelen uten å få scriptfeil)
- Dataene overføres til rad 2 i ny fane, men overskrives neste gang jeg nullstiller. Jeg ønsker at det skal legge seg under på første ledige rad.
Noen som har noen tips til hvordan endre scriptet?