Concaténation et inscription du résultat dans une table [Résolu]

Signaler
Messages postés
3
Date d'inscription
mardi 6 janvier 2009
Statut
Membre
Dernière intervention
8 janvier 2009
-
Messages postés
1
Date d'inscription
jeudi 9 juillet 2009
Statut
Membre
Dernière intervention
9 juillet 2009
-
Bonjour!

Voilà... je suis débutant en ce qui attrait au SQL et VBA pour MS Access. Je suis actuellement à la création d'une base de donnée de films DVD.

Je travail actuellement sur le gros de la base de donnée, la table "List" qui comprend toutes les informations de chaque films DVD. Dans ma table "List" j'ai, entre autre, les champs [ID] [Title] [Studio] et [Year].

Voilà, j'aimerais que la valeur INSCRITE dans le champ [ID] soit égale à la concaténation des champs [Title] [Studio] et [Year] de l'enregistrement correspondant.

Actuellement, j'ai fait des trucs du genre =[Title] & " - " & [Studio] & " - " & [Year] dans la zone de texte ID du formulaire en tentant de renvoyer la valeur dans le champs [ID] de la table List. Sans succès. J'ouvre la table "List" et le champ "ID" est toujours vide.

J'ai tenter avec une requête UPDATE List SET ID = Title & " - " & Studio & " - " & Year; mais encore là... sans succès. La requête se charge de TOUT changer à toutes les fois et si j'ai le malheur de modifier un des champs inclus dans le calcul, c'est perdu. Le code me retourne des erreur "Enregistrement Effacé" et ça devient un vrai calvère.

Bref... je galère pour quelque chose qui est, j'en suis certain, enfantin pour plusieurs d'entre vous. J'ai bien tenter de lire plusieurs trucs sur SQL pour Access et VBA pour Access mais j'ai toujours pas trouver "code à mon problème".

Quelqu'un d'informé pourrais m'aider? Sinon... vous connaissez des programmeurs pour ce genre de trucs. Je connais toutes mes attentes face au "produit final", je ne connais simplement personne qui puisse le programmer.

Merci d'avance pour les réponses.

4 réponses

Messages postés
3
Date d'inscription
mardi 6 janvier 2009
Statut
Membre
Dernière intervention
8 janvier 2009

Ça y est! J'ai trouver ma solution dans des ouvrages traitant de VBA. À partir de mon formulaire d'inscription des données DVD

Private Sub Studio_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Private Sub Title_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Private Sub Year_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Ça me donne, à coup sûr le bon ID et toujours à jour dès qu'une des valeurs est modifiée.
Messages postés
302
Date d'inscription
samedi 24 janvier 2004
Statut
Membre
Dernière intervention
4 février 2011

Quel est le type de ton Champ [ID]?

Avant de faire un Update, as-tu des données dans ta table?
Messages postés
3
Date d'inscription
mardi 6 janvier 2009
Statut
Membre
Dernière intervention
8 janvier 2009

le champ [ID] est de type "Texte". Pour ce qui est des données, j'ai actuellement 76 enregistrements dans ma table List.
Messages postés
1
Date d'inscription
jeudi 9 juillet 2009
Statut
Membre
Dernière intervention
9 juillet 2009

bonjour x3ption


j'ai actuellement les mêmes problèmes que tu avais. J'ai vu ta solution qui est:

Private Sub Studio_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Private Sub Title_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Private Sub Year_AfterUpdate()
Me![ID] = Me![Title] & " - " & Me![Studio] & " - " & Me![Year]
End Sub

Mais où a tu mis ces codes? Peux tu méexpliquer les détails?