Reset the Seed of the AutoNumber using ADOX in VBA
Function ResetSeed(strTable As String) As String 'Purpose: Reset the Seed of the AutoNumber, using ADOX. Dim strAutoNum As String 'Name of the autonumber column. Dim lngSeed As Long 'Current value of the Seed. Dim lngNext As Long 'Next unused value. Dim strSql As String Dim strResult As String lngSeed = GetSeedADOX(strTable, strAutoNum) If strAutoNum = vbNullString Then strResult = "AutoNumber not found." Else lngNext = Nz(DMax(strAutoNum, strTable), 0) + 1 If lngSeed = lngNext Then strResult = strAutoNum & " already correctly set to " & lngSeed & "." Else Debug.Print lngNext, lngSeed strSql = "ALTER TABLE [" & strTable & "] ALTER COLUMN [" & strAutoNum & "] COUNTER(" & lngNext & ", 1);" Debug.Print strSql CurrentProject.Connection.Execute strSql strResult = strAutoNum & " reset from " & lngSeed & " to " & lngNext End If End If ResetSeed = strResult End Function
No comments:
Post a Comment