Если вы храните и почтовый индекс, и порядковый номер клиента в одном поле номера счета, вам придется разделить их на части, чтобы выяснить следующий порядковый номер в данном почтовом индексе.
Должно быть проще хранить их в 2 полях:
zipcode sequence_num
92111 4
92111 5
Затем получите поле номера вашего счета с запросом, когда вам это нужно.
SELECT zipcode & "-" & sequence_num AS acct_num
FROM YourTable;
Тогда, когда вам нужно определить следующий sequence_num, lngNextSequenceNum, в пределах данного почтового индекса, pZip:
lngNextSequenceNum = DMax("sequence_num", "YourTable", "zipcode = " & pZip) +1
Такой подход может хорошо работать для однопользовательского приложения. Если ваше приложение многопользовательское, вам нужно что-то более изысканное. Однако это требование существует независимо от того, храните ли вы «номер счета» как одно поле или разбиваете его на два поля.
См. Создание и использование гибких полей автонумерации для многопользовательского подхода.