Jeg er ved at lave en database hvor der lagres serienumre. Jeg har lavet en userform hvor jeg kan indtaste de forskellige oplysninger, de kommer også over i arket, men når jeg bruger den søgefunktion jeg har lavet så er datoen forkert:
Indtastet dato 04-12-2020 bliver til 07-06-2612
Hvad gør jeg forkert?
Indtastnings koden er: Private Sub CommandButton2_Click()
Dim TargetRow As Integer TargetRow = Sheets("Engine").Range("B3").Value + 1
TargetRow = Sheets("Engine").Range("B3").Value + 1 'Sætter Ref feltet = antallet i tællerformlen i "Engine"B3
Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 0).Value = TargetRow 'Ref Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 1).Value = Txt_fraNR 'Første SN Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 2).Value = Txt_tilNR 'Sidste SN Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 3).Value = Txt_ordre 'M-ordrenr Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 4).Value = Txt_antal 'Antal Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 5).Value = Combo_varenr 'Varenr Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 6).Value = Txt_dato 'Dato Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 7).Value = Combo_navn 'Medarbejdernavn Sheets("Ark1").Range("Data_Start").Offset(TargetRow, 8).Value = Txt_bem 'Bemærkninger
Søgefunktionen er:
Rem ==================== Dim sidsteRække As Long Private Sub CommandButton1_Click() Dim fremstillingsDato As Date, serieNr As String Rem find sidste række sidsteRække = ActiveSheet.Range("A65000").End(xlUp).Row
Rem Fjern evt. - i serienummer serieNr = Replace(Me.TextBox1, "-", "")
If IsNumeric(serieNr) And serieNr <> "" Then fremstillingsDato = søgInterval(Val(serieNr)) If fremstillingsDato > 0 Then Me.Label3.Caption = fremstillingsDato Else Me.Label3.Caption = "Findes ikke" End If End If End Sub Private Function søgInterval(serieNr) Dim ræk As Long, fra As String, til As String
With ActiveWorkbook.Sheets("Ark1") For ræk = 1 To sidsteRække fra = Replace(.Cells(ræk, 1), "-", "") til = Replace(.Cells(ræk, 2), "-", "") If serieNr >= Val(fra) And serieNr <= Val(til) Then søgInterval = .Cells(ræk, 6) Exit Function End If Next ræk End With søgInterval = 0 End Function
|