Temat: Znajdź najbliższą wartość w kolumnie w tej samej tabeli (?)
Dzięki za odpowiedź postaram sie podac wiecej detaki, operacja odbywa się na stringach udało mi się cos takiego wykombinować w vba - ale proces jest bardzo długi po niemal 12 h przeliczyl 10% całości (z 300 000 rekordów zrobil 36 000). nie wiem czy vba jest ok - wydaje mi się jak by to mozna byłoby wrzucic w funkcje sql było by szybsze niestety nie umiem tego zrobić:
Format danych w sprawdzanych kolumnach wyglada i musi zostac taki "a_aaaaaaaaaaaa_pppp"
Sub test()
Dim objDB As DAO.Database
Dim mytbl As DAO.Recordset
Dim Calls As Field
Dim Sales As Field
Dim SwInfSP_MaA_Ct As Field
Dim SwH1_ct As Field
Dim test As String
Set objDB = CurrentDb
Set mytbl = objDB.TableDefs("tbl").OpenRecordset(dbOpenTable)
mytbl.MoveFirst
Do While Not mytbl.EOF
If mytbl.Fields(1).Value <> 0 Then
'Debug.Print mytbl.Fields(1)
h = DMin("Sales", "tbl", ("Sales >='" & mytbl.Fields(1).Value & "'"))
j = Split(h, "_")(0)
k = Split(h, "_")(1)
q = j & "_" & k
If mytbl.Fields(0).Value = q Then
mytbl.Edit
mytbl.Fields(5).Value = h
mytbl.Update
Else
If mytbl.Fields(0).Value = q Then
h = DMin("Sales", "tbl", ("Sales <='" & mytbl.Fields(1).Value & "'"))
mytbl.Edit
mytbl.Fields(5).Value = h
mytbl.Update
Else
End If
End If
End If
mytbl.MoveNext
Loop
End Sub