Non riesco proprio a capire la logica di questo codice che devo correggere! Come funzione, qualcuno può aiutarmi?


codice:
Public Sub subCreaTabelle()
    
    On Error GoTo subCreaTabelle

    i = 0
    ' Crea nuova tabella
    Set rs = New Recordset
    rs.Open " CREATE TABLE tbTabella_" & i & " (Riga int, CodProdotto nvarchar (15), Referenza nvarchar(15)) ", db, adOpenStatic, adLockOptimistic 
 
Exit Sub
subCreaTabelle:
    Select Case Err.Number
        Case Is = -2147217900
            If i <= 500 Then
                i = i + 1
                Resume 0
            Else
                MsgBox "Error!!! " & Str$(Err.Number) & " " & Err.Description, vbInformation
            End If
        Case Else
            MsgBox "Error!!! " & Str$(Err.Number) & " " & Err.Description, vbInformation
    End Select
End Sub