Problème d'insertion dans une table sous ACCESS

Problème d'insertion dans une table sous ACCESS - VB/VBA/VBS - Programmation

Marsh Posté le 26-05-2008 à 11:13:30    

Bonjour,
 
 
J'ai un formulaire : "Fiche_Activite" qui doit me permettre d'ajouter une nouvelle activité dans la table "Activite"
 
Dans cette table "Activite", Il y a le Numéro d'activité (Type Numéro Auto), le Libellé de l'activité (type texte) et un Numéro de métier (type numérique).
Ce numéro de métier est une clé étrangère venant de la table "Métier"
 
Sur le formulaire j'ai une liste déroulante permettant de choisir un métier :
 
Requête : SELECT Metier.LibMetier, Metier.NumMetier FROM Metier;  
 
Puis une zone de texte permettant d'entrer le nom de la nouvelle activité.
 
J'ai rajouté un bouton de commande : "Enregistrer" pour insérer le nouvel enregistrement dans la table "Activite"
 
Voilà mon code :  
 

Code :
  1. Private Sub Commande19_Click()
  2. 'Declaration des variables
  3. Dim bd As Database
  4. Dim rs As Recordset
  5.                
  6. 'Sélection de la BDD
  7. Set bd = CurrentDb
  8. Set rs = bd.OpenRecordset("Activite", DB_OPEN_DYNASET)
  9. 'Ajout de l'enregistrement
  10. rs.AddNew
  11. rs![NumActivite] = Me.NumActivite
  12. rs![LibActiv] = Me.LibActiv
  13. rs![NumMetier] = Me.Modifiable15.Column(0)
  14. rs.Update
  15. rs.MoveLast
  16. End Sub


[B]

rs![NumMetier] = Me.Modifiable15.Column(0)
entraine une erreur : "erreur de conversion de type de données"
 
 
Modifiable15 est la zone de liste affichant tous les métiers existant dans la base de données.
 
Avez vous une idée pour que je puisse insérer dans ma table "Activité" une nouvelle activité ?


Message édité par Skangell le 26-05-2008 à 11:19:33
Reply

Marsh Posté le 26-05-2008 à 11:13:30   

Reply

Marsh Posté le 26-05-2008 à 13:32:54    

Personne peut m'aider ?!? :(

Reply

Marsh Posté le 27-05-2008 à 07:17:21    

Bonjour,
qu'as-tu en :  Me.Modifiable15.Column(0)
 
ne serait-ce pas:  Metier.LibMetier ?? qui n'est pas numérique.
 
PLace donc entre 13 et 14 la ligne suivante pour voir:
 
Msgbox Me.Modifiable15.Column(0)
 
Cordialement

Reply

Marsh Posté le 27-05-2008 à 08:18:36    

Bonjour ! Merci d'avoir répondu !
 
Le Msgbox Me.Modifiable15.Column(0) me donne le numéro de métier selectionné dans la zone de liste modifiable.
 
Dans ma base de données, je veux qu'il s'insère le NumActivite (numero automatique), le libellé de l'activite et le numéro du métier selectionné dans la liste.
 
Depuis hier j'ai réussi à insérer le nouvel enregistrement, c'est à dire le numéro d'activité + le libellé de l'activité. Mais pour le numéro de métier, la valeur reste à 0 quoique je choisisse dans ma liste !

Reply

Marsh Posté le 27-05-2008 à 12:03:07    

Il faut convertir ton Me.Modifiable15.Column(0) en entier  
cint(.....) par exemple.

Reply

Marsh Posté le 27-05-2008 à 14:27:12    

Merci de ta réponse mais j'ai trouvé la solution ;) !
 
Bonne après midi !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed