Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/09/2007, 11h38   #1
Invité de passage
 
Inscription : août 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 4
Points : 1
Points : 1
Par défaut Valeur en "phrase" plutot qu'en liste dans un état

Bonjour,

Voila mon probleme.
J'aimerais regroupés les enregistrements d'une table dans un état de façon à ce qu'un champ texte de l'état présente les valeurs de cette manière :
"valeur0, valeur1, valeur 2, valeur 3, valeur 4, etc" , comme une phrase, plutot que de le présenter sous forme de liste du genre :
valeur0
valeur1
valeur2
valeur3
valeur4
ect....
Je ne vois pas du tout comment je peux m'y prendre..... Il me faudrait un truc qui va d'enregistrement en enregistrement et qui ajoute les valeurs à la "phrase" créée......
Si quelqu'un à une idée!!! elle serait la bienvenue!!!!!
Merci
newzona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 11h52   #2
Membre confirmé
 
Avatar de spaiku
 
Chef de projet MOA
Inscription : septembre 2007
Messages : 191
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2007
Messages : 191
Points : 250
Points : 250
Bonjour,

tu ouvres un recordset avec les valeurs que tu veux. Ensuite tu le parcours et tu concatènes tes valeurs entre elles :

Code :
1
2
3
4
While not rs.EOF
   machaine = machaine + ", " + rs.fields("monchamp")
   rs.movenext
wend
spaiku est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 12h28   #3
Invité de passage
 
Inscription : août 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 4
Points : 1
Points : 1
merci pour cette réponse rapide. Mais au risque de passer pour un crétin, je ne vois pas comment mettre ça en place (recordset et autres)

Par exemple, imaginons un exemple, j'ai une table "personne", avec un champ "nom", il y a par exemple trois noms, bob, jimmy, et kurt.

Comment placer le code et où, pour qu'un état me présente la chose sous :
"bob, jimmy, kurt".

Merci.....
newzona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 12h38   #4
Membre confirmé
 
Avatar de spaiku
 
Chef de projet MOA
Inscription : septembre 2007
Messages : 191
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2007
Messages : 191
Points : 250
Points : 250
Normalement, je devrais te dire d'aller lire un tuto sur les recordset, histoire de t'autoformer avant de demander de l'aide...

Mais bon, je suis bon prince aujourd'hui.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim db as database
dim rs as recordset
dim strSQL as string
dim valeur as string
set db = currentdb
strSQL = "SELECT nom FROM personne"
set rs = db.openrecordset(StrSQL)
if not rs.BOF and rs.EOF
   rs.movefirst
   valeur = rs.fields("nom")
   rs.movenext
   While not rs.EOF
      valeur = valeur + ", " + rs.fields("monchamp")
      rs.movenext
   wend
Forms("monformulaire").Controls("moncontrole").value = valeur
End if
Else: msgbox "pas d'enregistrements trouvés"
spaiku est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 12h41   #5
Membre confirmé
 
Avatar de spaiku
 
Chef de projet MOA
Inscription : septembre 2007
Messages : 191
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Chef de projet MOA
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2007
Messages : 191
Points : 250
Points : 250
A la treizième ligne, il faut bien sûr remplacer "monchamp" par "nom"
spaiku est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 14h03   #6
Invité de passage
 
Inscription : août 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 4
Points : 1
Points : 1
ok, merci de ta diligence spaiku, mais j'ai regardé les tutoriels, consulter un livre msaccess (bon un vieux) et copieusement chercher dans l'aide d'access avant de demander de l'aide ici. Je ne suis pas du genre à ce qu'on me mache le travail mais je me suis tellement pris la tête sur ce probleme que je n'arrive plus à avoir de recul..... Et bien entendu, ça je le sais, j'ai des lacunes en code.....
Sur ce, merci pour ton code, mais là vraiment je ne sais plus, où dois-je le placer???? J'ai tenté divers emplacement dans le formulaire (sur ouverture, sur un bouton,etc.. ), mais rien ne se passe ou alors j'ai un message d'erreur.
Cela vient peut-être de ma version d'access (access 2000)?? mais je ne pense pas.....
En clair, j'avoue je n'y arrive pas....... et suis de nouveau exaspéré par mon incompétence....... mais comme toi, tu es compétent, je me permets à nouveau de te demander de bien vouloir me filer un coup de main, parceque mon tube d'aspirine est vide.......
newzona est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/09/2007, 14h10   #7
Invité de passage
 
Inscription : août 2003
Messages : 4
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 4
Points : 1
Points : 1
voici une base exemple ce que je tente de faire
Fichiers attachés
Type de fichier : zip bd1.zip (19,0 Ko, 5 affichages)
newzona est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h09.


 
 
 
 
Partenaires

Hébergement Web