Я полностью растерялся, почему функция DLast в моем коде находит не последнюю запись в таблице, а указывает c одну (8-я запись, если быть точным). Интересно, что код (казалось) работал до тех пор, пока количество записей не достигло 10.
Мой код:
NrLast = DLast("Paraiskos_nr", "tblNew_sys") 'it should find the very last entry in the table
NewNr = Split(NrLast, "-")(1) 'since entry needed is in string, this part splits it and converts to integer number part of the string.
NewNr = CInt(NewNr) + 1 'now its starts to generate new number by adding 1 to the extracted number from the last entry
NewNr = "STV-" & CStr(NewNr) 'converts whole thing back to string in specific format
Forms![frmNewSys_newEntry]![Paraiskos_numeris].Value = NewNr 'fills specific column with newly generated info on the new entry.
Больше информации о моей функции: я пытаюсь создать функцию, которая будет генерировать последовательные число в указанном формате c для новых записей в таблице (они добавляются через специальную форму). Числовой формат в строке, и это похоже на «STV-XXXX» (х означает число).
Мой код выше работал, пока номер записи в таблице не достиг 10 (ошибка 10-й записи). Теперь каждая новая запись получает сгенерированный номер "STV-9". Я попытался найти проблему, и это, кажется, тот факт, что функция DLast
в моем коде каждый раз возвращает номер "STV-8". Что вызывает это и как мне это исправить?