A family of Microsoft relational database management systems designed for ease of use.
First, you should use two fields in the table for that, one for the date and the other for the sequential numbering. It is much easier to manipulate (do what you want) things when they are separate than it is to take a combined value apart. OTOH, it is very easy to put the separate values together (concatenate) whenever you need to display them to users in a form or report. This way you so not need an extra table.
Rather than store letters in the sequential numbering field, I would make it an Integer field so calculating the next number is easy. It's also fairly simple to convert a number to a letter using the Chr function.
If you go this way, the VBA code in the form's BeforeUpdate event procedure to calculate the next number and put it in the sequential number field could look like:
Me.BatchDate = Date
Me.ModNum= Nz(DMax("ModNum", "BatchesTable", "BatchDate = Date()", 0) + 1
And the form/report text box expression that converts the ModNum field's integer value to one or two letters could look like:
=Format(BatchDate, "yyyymmdd") & IIf(ModNum > 26, Chr(64 + (ModNum - 1) \ 26), "") & Chr(65 + (ModNum - 1) MOD 26)
If I understood what you want, I think that should be all you need.