Call maSub(1) Private maSub(IndexTable) Dim TableName As String TableName = "TABLE_" & CStr(IndexTable) rs.Open TableName, db, adOpenDynamic, adLockOptimistic If rs.RecordCount = 15 Then ' Il faut passer à l'index de table suivant rs.Close Call maSub(IndexTable + 1) Else ' Ici, le code des AddNew End Sub End Sub
Il suffirait d'ajouter un champ identifiant la session de jeu, par exemple la date et l'heure, que tu génèrerais en début de jeu uniquement et dont tu te servirais à chaque fois que tu ajoutes une donnée.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionPourquoi dans ce cas ne pas laisser une seule et unique table et y ajouter un nouveau champ permettant de dissocier les enregistrements par groupe ?
Par exemple, un nouveau champ "GroupeNo" dans lequel tu mettrais un chiffre de 1 à x.
Dim db As ADODB.Connection Dim rs As ADODB.Recordset Dim G_Good_Answer As Long Const TABLE_NAME As String = "Table1" Const FIELD_QUESTION_NAME As String = "Question" Const FIELD_INDEX_NAME As String = "Numero" Const FIELD_REPONSE1 As String = "Reponse1" Const FIELD_REPONSE2 As String = "Reponse2" Const FIELD_REPONSE3 As String = "Reponse3" Const FIELD_REPONSE4 As String = "Reponse4" Const FIELD_GOOD_ANSWER As String = "BonneReponse"
Private Sub maSub(IndexTable) Dim db As ADODB.Connection Dim rs As ADODB.Recordset Dim GoodAnswer As Long Dim TableName As String Set db = New ADODB.Connection Set rs = New ADODB.Recordset db.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database password=; Data Source=" & App.Path & "\data.mdb" TableName = "TABLE_" & CStr(IndexTable) rs.Open TableName, db, adOpenDynamic, adLockOptimistic If rs.RecordCount = 15 Then ' Il faut passer à l'index de table suivant rs.Close Call maSub(IndexTable + 1) Else ' Ici, le code des AddNew rs.AddNew rs.Fields(FIELD_INDEX_NAME) = Text4.Text - 1 rs.Fields(FIELD_QUESTION_NAME) = Text1.Text rs.Fields(FIELD_Gamename) = Text5.Text rs.Fields(FIELD_REPONSE1) = Text2(0).Text rs.Fields(FIELD_REPONSE2) = Text2(1).Text rs.Fields(FIELD_REPONSE3) = Text2(2).Text rs.Fields(FIELD_REPONSE4) = Text2(3).Text GoodAnswer = CLng(Val(Text3.Text) rs.Fields(FIELD_GOOD_ANSWER) = GoodAnswer End If End Sub
Private Sub Cmd_save_Click() Call maSub(1) End Sub