A voir également:
- Erreur 80004005 après migration de la base de données
- Erreur 0x80070643 - Guide
- Formules excel de base - Guide
- Migration windows 7 vers windows 10 - Guide
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
- Erreur vidéo freebox ✓ - Forum TV & Vidéo
2 réponses
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
9 janv. 2019 à 19:12
9 janv. 2019 à 19:12
bonjour, si tu es en débogage, partage plutôt le code, en précisant sur quelle ligne l'erreur se produit.
n'oublie pas d'utiliser la coloration syntaxique.
n'oublie pas d'utiliser la coloration syntaxique.
Utilisateur anonyme
Modifié le 10 janv. 2019 à 10:09
Modifié le 10 janv. 2019 à 10:09
Bonjour et merci de votre réponse.
Voici le code:
Voici la ligne surlignée:
Merci beaucoup et bonne journée
Voici le code:
Option Compare Database Function GetDataVersion() As Integer Dim rst As ADODB.Recordset Set rst = New ADODB.Recordset rst.Open "SELECT MAX (Release) as nb FROM TblVersionDonnees", CurrentProject.Connection GetDataVersion = rst("nb")End FunctionFunction AutomaticDataUpdate(FullDataNameFile As String) As Integer '@@@ Crée et exécute dynamiquement des requêtes dans une autre base de données '@@@ Si OK renvoi true '@@@ si KO renvoi false On Error Resume NextDim DataDb As Database Dim ProgDb As Database Dim QueryCollection As QueryDefs Dim QueryTMP As QueryDef Dim ErrorSpy As Boolean Dim Resultat As String Dim wrkAdmin As Workspace Dim strSaveFile As String Dim rst As ADODB.Recordset Dim rst2 As ADODB.Recordset Dim de As Integer Dim jusque As IntegerSet rst = New ADODB.Recordset Set rst2 = New ADODB.Recordset'@@@ Ouverture des bases de données Programme et Données dans un workspace Admin - password vide - Microsoft Set wrkAdmin = CreateWorkspace("WrkAdmin", "admin", "", dbUseJet) Workspaces.Append wrkAdmin Set ProgDb = DBEngine.Workspaces(0).Databases(0) Set DataDb = DBEngine.Workspaces("WrkAdmin").OpenDatabase(FullDataNameFile)'@@@ Vérification du nombre de mises à jour rst.Open "SELECT count (*) as nb FROM TblSQL WHERE NumRelease > " & GetDataVersion(), CurrentProject.ConnectionIf rst("nb") = 0 Then AutomaticDataUpdate = 0 '@@@ Pas de mises à jourElse de = GetDataVersion() + 1 jusque = de + rst("nb") - 1 '@@@ Sauvegarde de la base de données avant la migration strSaveFile = Mid(FullDataNameFile, 1, Len(FullDataNameFile) - 4) & "_" & day(Date) & "_" & Month(Date) & "_" & Year(Date) & "_" & Hour(Time()) & "_" & Minute(Time()) & ".sav" rep = CopyFile(FullDataNameFile, strSaveFile, 0) For i = de To jusque '@@@ Ouverture des ordres SQL à exécuter rst2.Open "SELECT * FROM TblSQL WHERE NumRelease = " & i, CurrentProject.Connection Debug.Print ("SELECT * FROM TblSQL WHERE NumRelease = " & i) Debug.Print (rst2("TypeRelease")) 'Définition du type de mise à jour If rst2("TypeRelease") = 1 Then Set QueryCollection = DataDb.QueryDefs On Error Resume Next QueryCollection.Delete "DataUpdate" On Error Resume Next Set QueryTMP = DataDb.CreateQueryDef("DataUpdate") QueryTMP.sql = rst2("CodeSQL") On Error Resume Next DataDb.Execute "DataUpdate" Else DoCmd.SetWarnings False DoCmd.RunSQL rst2("CodeSQL") DoCmd.SetWarnings True End If DoCmd.SetWarnings False DoCmd.RunSQL "INSERT INTO TblVersionDonnees (Release) VALUES (" & i & ")" DoCmd.SetWarnings True rst2.Close Next iAutomaticDataUpdate = 1 End IfEnd FunctionFunction DataUpdate() As StringDim rst As ADODB.RecordsetSet rst = New ADODB.Recordsetrst.Open "SELECT * FROM TblSQL WHERE NumRelease > " & GetDataVersion(), CurrentProject.Connection While Not rst.EOF DoCmd.SetWarnings False DoCmd.RunSQL rst("CodeSQL") DoCmd.RunSQL "UPDATE TblVersionDonnees SET Release = " & rst("NumRelease") & " WHERE NumVersion = " & GetDataVersion() DoCmd.SetWarnings Falserst.MoveNext Wend End Function
Voici la ligne surlignée:
rst.Open "SELECT MAX (Release) as nb FROM TblVersionDonnees", CurrentProject.Connection
Merci beaucoup et bonne journée
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
10 janv. 2019 à 22:32
10 janv. 2019 à 22:32
vraiment à tout hasard: as-tu compacté/réparé la base Access?
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
>
Utilisateur anonyme
11 janv. 2019 à 19:01
11 janv. 2019 à 19:01
sinon, peux-tu partager la base?