Ajouter des enregistrements avec un formulaire, avec du code [Résolu] - VB/VBA/VBS - Programmation
Marsh Posté le 10-05-2005 à 13:39:20
yuminette a écrit : Bonjour ! |
Salut,
Peut-être que le super gros bouquin d'Access a un chapitre sur ce domaine... As-tu regardé au moins?
Et si le super gros bouquin d'Access te rebute, fais une recherche:
Et puis effectivement ce que tu cherches à faire et le B.A-ba d'Access... Donc en cherchant un tout petit peu, tu devrais y arriver!
Ah oui, encore un petit indice pour t'aider : Assistant (ou Wizard en anglais).
Voilà j'espère que cela t'aidera dans tes recherches.
A+
Marsh Posté le 10-05-2005 à 13:42:54
Ben voui j'ai déjà regardé...
Si je viens ici c'est parce que je n'ai pas trouvé ailleurs...
Sur google qui est mon ami, je n'ai trouvé que des informations sur comment consulter les tables.
Seulement voilà, ça commence à faire un bout de temps que je suis dessus... Et les bases de données c'est pas trop ça...
Marsh Posté le 11-05-2005 à 08:22:29
moi aussi g galéré au début du stage, mais tu n'es pas obligé de passer par VBA, il y a des requêtes au début si tu galère trop, tu peux faire une requête mis à jour ou ajout,et tu mets en relation la table ki correspond.
pour ma part g fini ma bd depuis 2semaines, elle a trop de charme !!!
allez bon courage et fait moi signe si t'a besoin de + d'aide, je c ke c trop prise de tete au début...
Marsh Posté le 11-05-2005 à 11:05:08
Merci pour tes conseils, effectivement il n'y avait pas besoin de code !
J'ai juste mis un code pour afficher un message de confirmation, mais par contre si on dit non alors les données du formulaire sont effacées et on doit tout réécrire à nouveau, alors que moi j'aimerais qu'on puisse retourner sur le formulaire si on veut juste corriger un champ, au lieu d'aller à un autre formulaire pour modifier l'enregistrement.
voilà mon code pour l'instant :
Private Sub Ajouter_ouvrant_droit_Click()
retour = MsgBox("Ajouter l'ouvrant droit à la base de données ?", vbYesNo + vbExclamation, "Confirmation de l'ajout" )
If retour = 6 Then
DoCmd.Save
Else
Me.Undo
End If
End Sub
Marsh Posté le 11-05-2005 à 12:22:47
yuminette a écrit : Merci pour tes conseils, effectivement il n'y avait pas besoin de code ! |
Salut,
Si jamais, teste plutôt ta valeur de retour avec la constante VB vbYes. Ca change rien mais ça rend juste ton code plus lisible
Sinon, pour ton problème de remise à zéro, il ne faut pas utiliser Me.Undo.
Donne plutôt le focus à un de tes champs de saisie. Comme ça ton problème est résolu.
A+
Marsh Posté le 13-05-2005 à 15:07:14
Merci à tous pour votre aide !
Mon formulaire fonctionne enfin, je vous met le code ci dessous :
Private Sub Ajouter_ouvrant_droit_Click()
' ---- vérification des champs vides -----
If IsNull(Me.nom) Then
MsgBox "Vous devez remplir le champ Nom", vbOKOnly
Exit Sub
End If
...
...
If IsMissing(Me.id_type_contrat) Then
MsgBox "Vous devez remplir le champ Contrat", vbOKOnly
Exit Sub
End If
retour = MsgBox("Ajouter l'ouvrant droit à la base de données ?", vbYesNo & vbExclamation, "Confirmation de l'ajout" )
If retour = 1 Then
' ---- Requete SQL d'insertion dans la table -----
Dim requete As String
requete = "INSERT INTO ouvrant_droit (matricule, qualite, nom, prenom, dt_naiss, dt_entree_cie, dt_ambauche, NumAssMaladie, tranche, parts, id_sit_fam, id_sit_geo, id_type_contrat, id_unite_structurelle, id_secteur, id_grade) VALUES ('"
requete = requete & matricule.Value & "' , '"
requete = requete & qualite.Value & "', '"
requete = requete & nom.Value & "', '"
requete = requete & prenom.Value & "', #"
requete = requete & Format(dt_naiss.Value) & "#, #"
requete = requete & Format(dt_entree_cie.Value) & "#, #"
requete = requete & Format(dt_embauche.Value) & "#,'"
requete = requete & NumAssMaladie.Value & "', '"
requete = requete & tranche.Value & "', '"
requete = requete & Me.parts.Value & "', "
requete = requete & Me.id_sit_fam.Value & ", "
requete = requete & Me.id_sit_geo.Value & ", "
requete = requete & Me.id_type_contrat.Value & ", "
requete = requete & Me.id_unite_structurelle.Value & ", "
requete = requete & Me.id_secteur.Value & ", "
requete = requete & Me.id_grade.Value & " );"
MsgBox requete
DoCmd.RunSQL requete
MsgBox "Mise à jour effectuée !"
Me.Undo
Else
Exit Sub
End If
End Sub
Marsh Posté le 10-05-2005 à 12:09:47
Bonjour !
Dans le cadre d'un stage j'ai fait une bdd Access et maintenant je dois faire des formulaires pour ajouter des nouveaux enregistrements dans cette base.
j'ai un super gros bouquin Access mais malheureusement, impossible de trouver comment faire cette opération qui me semble être pourtant le B.A-ba des opérations les plus utiles.
Alors voilà, je voudrais connaitre la syntaxe pour récupérer les valeurs de mes champs du formulaire et les insérer dans la table.
Merci beaucoup...
Message édité par yuminette le 13-05-2005 à 15:09:07