Во-первых, вам нужна функция, которая генерирует подпись для этой таблицы.Что-то похожее на:
Public Function GetSignature(sTableName As String) As String
Dim oDB As DAO.Database
Dim oRS As DAO.Recordset
Dim sSQL As String
Dim sResult As String
sSQL = "Select Distinct MinOfWeight_Up_To" _
& vbCrLf & "From [" & sTableName & "]"
& vbCrLf & "Order By MinOfWeight_Up_To"
Set oDB = DBEngine.Workspaces(0).Databases(0)
Set oRS = oDB.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
Do Until oRS.EOF
sResult = sResult & "|" & Nz(oRS(0))
oRS.MoveNext
Loop
GetSignature = result
Set oRS = Nothing
Set oDB = Nothing
End Function
Как только вы это сделаете, вам понадобится другая подпрограмма, которая собирает список таблиц, вызывает вышеуказанную подпись для каждой таблицы и сохраняет результат во временной таблице.Затем вы запросите у этой временной таблицы уникальный список подписей.
Следует отметить, что миллиарды конкатенаций строк будут очень медленными.Вместо этого вам следует искать реализации более эффективного класса построителя строк, который вы можете использовать для создания сигнатур.