Bonjour,
J'ai un formulaire contenant 3 champs indépendants dont un combobox.
Dans l' event d'un bouton "enregistrer / actualiser" du formulaire j'ai mis le code vba suivant
[code]Private Sub BtnEnregistrerPostedeTresorerie_Click()
If IsNull(Me.NumPostedetresorerie) = True Then
DoCmd.RunSQL "insert into [postes de trésorerie](Code,Libellé,Banque) values ('" & Me.Code & "',""" & Me.Libellé & """,'" & Me.Banque & "')"
Else
DoCmd.RunSQL "update [Postes de trésorerie] set [Postes de trésorerie].banque= forms![postes de trésorerie]![banque],[Postes de trésorerie].code= forms![postes de trésorerie]!Si je cherche à actualiser les champs d'un enregistrement existant access me signale "erreur de conversion de type", après avoir décortiqué le problème il s'avère que c'est le combobox "Banque" qui pose problème quand on veut actualiser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 ,[postes de trésorerie].Libellé= forms![postes de trésorerie]![libellé] where [postes de trésorerie].[NumPosteTrésorerie]= forms![postes de trésorerie]![NumPostedeTresorerie]" MsgBox "Modification effectuée" End If Me.ListePostestrésorerie.Requery End Sub
Si je ne reclique et sélectionne pas de nouveau une banque dans le combobox le message d'erreur apparait.
Le dit combobox est alimenté par le code suivant provenant d'une listbox déroulante (voir photo)
Sachant que le combobox "banque" a une valeur numérique en entier long dans la première colonne qui sert d' ID dans la realation avec la table "Banques".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Private Sub ListePostesTrésorerie_AfterUpdate() Me.NumPostedetresorerie = Me.ListePostestrésorerie.Column(0) Me.Code = Me.ListePostestrésorerie.Column(1) Me.Libellé = Me.ListePostestrésorerie.Column(2) Me.Banque = Me.ListePostestrésorerie.Column(3) End Sub
Nota : La requête Insert marche parfaitement
Une idée de ce qui peut provoquer cette erreur ?
Partager