Fonctionnement d'une base de données access 2000

exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
depuis 1 mois ,j'ai remplacé la suite microsoft 2000 par microsoft 2007. Ma base de donnée créée en 2003 par un collègue (consommation voiture) fonctionnait très bien ,depuis le transfert elle ne fonctionne plus , la variable qui s'incrémentait avec l'enregistrement reste vide et ceux malgré la confirmation du déblocage de la table.

Je précise que sur mon UC fixe sous Windows XP et la suite microsoft tout fonctionne bien.
Merci de votre aide.


13 réponses

castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
 
bonjour
Certaines lignes de code VBA access 2003 et 2007 sont incompatible
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
bonsoir,
merci pour votre réponse, mais je ne connais pas la programmation VBA, Je joints le programme form_kilometre ,pouvez-vous m'indiquer ou réside le problème?
Option Compare Database
Option Explicit

Private Sub ANCIEN_KM_AfterUpdate()
Me![DISTANCE PARCOURUE] = Me![NOUVEAU KM] - Me![ANCIEN KM]

Dim d, l
d = Me![DISTANCE PARCOURUE]
l = Me![LITRES]
Me![CONSO PARTIELLE] = (l / d) * 100

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

DoCmd.GoToControl "NOUVEAU KM"
End Sub

Private Sub ANCIEN_KM_GotFocus()
Dim TITRE, MSG, REPONSE
If Me![LITRES] Like "*" Then
Else
Beep
TITRE = "Contrôle des données"
MSG = "Vous devez impérativement renseigner la quantité de carburant."
Beep
REPONSE = MsgBox(MSG, vbCritical, TITRE)
DoCmd.GoToControl "LITRES"
End If

End Sub

Private Sub Boîte31_Click()

End Sub

Private Sub CALCULS_Enter()

End Sub

Private Sub DATE_BeforeUpdate(Cancel As Integer)

End Sub

Private Sub DATE_SYSTEME_Click()
Me![DATE] = Now()
DoCmd.GoToControl "LITRES"
End Sub

Private Sub EntêteFormulaire_Click()

End Sub

Private Sub Image36_Click()

End Sub

Private Sub LITRES_AfterUpdate()
Dim d, l
d = Me![DISTANCE PARCOURUE]
l = Me![LITRES]
Me![CONSO PARTIELLE] = (l / d) * 100

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

End Sub

Private Sub NOUVEAU_KM_AfterUpdate()
Me![NUM 2] = Me![NUM]
Me![NUM -1] = Me![NUM] - 1
If Me![ANCIEN KM] Like "*" Then GoTo 20 Else GoTo 10
10
Me![ANCIEN KM] = Me![SF KILOMETRES].Form![NOUVEAU KM]
20
Me![DISTANCE PARCOURUE] = Me![NOUVEAU KM] - Me![ANCIEN KM]
30
'Dim d, l
'd = Me![DISTANCE PARCOURUE]
'l = Me![LITRES]
Me![CONSO PARTIELLE] = Me![LITRES] / Me![DISTANCE PARCOURUE] * 100 '(l / d) * 100


DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70
DoCmd.GoToControl "NOUVEAU"
End Sub


Private Sub DERNIER_Click()
On Error GoTo Err_DERNIER_Click


DoCmd.GoToRecord , , acLast

Exit_DERNIER_Click:
Exit Sub

Err_DERNIER_Click:
MsgBox Err.Description
Resume Exit_DERNIER_Click

End Sub

Private Sub NOUVEAU_KM_GotFocus()
Dim TITRE, MSG, REPONSE
If Me![LITRES] Like "*" Then
Else
Beep
TITRE = "Contrôle des données"
MSG = "Vous devez impérativement renseigner la quantité de carburant."
Beep
REPONSE = MsgBox(MSG, vbCritical, TITRE)
DoCmd.GoToControl "LITRES"
End If
End Sub

Private Sub NUM_BeforeUpdate(Cancel As Integer)

End Sub

Private Sub PiedFormulaire_Click()

End Sub

Private Sub PREMIER_Click()
On Error GoTo Err_PREMIER_Click


DoCmd.GoToRecord , , acFirst

Exit_PREMIER_Click:
Exit Sub

Err_PREMIER_Click:
MsgBox Err.Description
Resume Exit_PREMIER_Click

End Sub
Private Sub PRECEDENT_Click()
On Error GoTo Err_PRECEDENT_Click


DoCmd.GoToRecord , , acPrevious

Exit_PRECEDENT_Click:
Exit Sub

Err_PRECEDENT_Click:
MsgBox Err.Description
Resume Exit_PRECEDENT_Click

End Sub

Private Sub SF_KILOMETRES_Enter()

End Sub

Private Sub SUIVANT_Click()
On Error GoTo Err_SUIVANT_Click


DoCmd.GoToRecord , , acNext

Exit_SUIVANT_Click:
Exit Sub

Err_SUIVANT_Click:
MsgBox Err.Description
Resume Exit_SUIVANT_Click

End Sub
Private Sub NOUVEAU_Click()
On Error GoTo Err_NOUVEAU_Click


DoCmd.GoToRecord , , acNewRec
DoCmd.GoToControl "DATE"
Exit_NOUVEAU_Click:
Exit Sub

Err_NOUVEAU_Click:
MsgBox Err.Description
Resume Exit_NOUVEAU_Click

End Sub
Private Sub FERMER_Click()
On Error GoTo Err_FERMER_Click


DoCmd.Close

Exit_FERMER_Click:
Exit Sub

Err_FERMER_Click:
MsgBox Err.Description
Resume Exit_FERMER_Click

End Sub
0
castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
 
bonjour
je ne suis pas assez caler en VBA pour trouver le bog.Il me semble que dans access 2007 il y a des outils pour remédier au mauvais fonctionnement des procédures.
Peux tu mettre ta base sur le site avec cjoint.fr
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
bonsoir,voici l'adresse du lien https://www.cjoint.com/?BJCtjvbPPdE de ma base scenic1.
Merci poutr cette info.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour a vous deux

exalta, j'ai recupere votre fichier. Au premier enregistrement, le numeroauto de Num c'est mis a 277 c'est a dire a -1 du premier enregistrement de 2009 et ensuite reprise de la numerotation normale apres l'enregitrement du 22/10/2012.
Je sais que de temps en temps le passage de Access 2003 a Access 2007-2010 il y a des problemes de champ numeroauto. Je vous joint votre fichier qui pour moi n'a plus rien d'anormale. Essayez chez vous et dites ce qui se passe.

https://www.cjoint.com/?BJDiHIMQGgP

A+
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour,
la base ne fonctionne toujours pas,normalement l'ancien kilométrage n'a pas à être servi,il s'incrémente tout seul avec le champ "Nouveau kilomètre" de l'enregistrement -1. Quant au numéro de champ , précédemment j'avais une autre voiture et j'ai supprimé tous les enregistrements concernant cette voiture.
Merci pour votre intervention.
A+
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,

,normalement l'ancien kilométrage n'a pas à être servi,il s'incrémente tout seul avec le champ "Nouveau kilomètre" il n'y a rien dans votre VBA ou autre qui recupere cette donnee!!!!!!
Avez vous garde le fichier access 2003??

A+
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir,
Oui j'ai la version 2000 qui d'ailleurs tourne sur mon PC fixe qui est sous XP et la suite Microsoft 2000.
Voici le lien pour mon fichier
https://www.cjoint.com/?BJDsNMeqtF8
A+
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,
le lien que vous avez mis ne donne pas votre fichier???????

A+
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Re,

cliquez sur votre lien et rendez compte de ce qui se passe!!!!!!
A+
0
exalta Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
vous avez raison ,le fichier n'apparait pas ,est-ce que le fichier n'est pas trop important (3.43 Mo)?
Je l' ai zippé et voila le lien
https://www.cjoint.com/?BJDuhXOPLSH
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,
J'ai recupere le fichier, le fonctionnement est le meme. Pas de remplissage automatique Ancien_KM. Mais c'est faisable sans probleme.

A+
0