Peux-tu poster directement en utilisant l'icône entourée :
Peux-tu poster directement en utilisant l'icône entourée :
Oh pardon, je n'avais pas vu qu'il y avait ça x)
AtR_DB_test.zip
Voila c'est fait
la première erreur se situe au niveau de l'onglet Données, il faut changer la propriété Contenu et mettre t_département et la propriété Colonne liée à 1 car c'est bien le NuméroAuto qui fait la relation entre les 2 tables (bien que champ Département dans t_références soit de type Texte court, il faudrait qu'il soit de type Numérique Entier pour bien faire).
la deuxième erreur, qui découle de la première se situe au niveau de l'onglet Format, il faut modifier le nombre de colonnes et leur taille :
Et le type de champs dans la table t_Reference devrait être Entier Long.
A+
Alors la, merci
Ca marche ... Tout simplement, ça marche. Merci à tous pour vos réponses
Problème résolu donc. Petite question au passage, est-il possible de masquer la flèche du menu déroulant ? Car elle me gène mais c'est le seul moyen que j'ai trouvé du coup pour afficher le département (en zone de texte pas moyen)
bonjour René,
comme je l'ai signalé précédemment, le type entier suffit largement (on pourrait même mettre Byte) vu qu'en France il y n'existe qu'une centaine de départements.
à Itriel :
en complément de mes rectifications :
sur l'évènement b_recherche_Click(), dans le filtre il ne faut pas faire référence au nom du contrôle du formulaire mais au nom du champ de la table, j'ai donc enlevé le préfixe zdt_ à zdt_département, zdt_capacite et zdt_date :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 Private Sub b_recherche_Click() f = "" de If Not IsNull(Me.filtre_département) And Me.filtre_département <> "" Then If f <> "" Then f = f & " AND département = """ & Me.filtre_département & """" Else f = "département = """ & Me.filtre_département & """" End If End If If Not IsNull(Me.filtre_date1) And Me.filtre_date1 <> "" And Not IsNull(Me.filtre_date2) And Me.filtre_date2 <> "" Then If f <> "" Then f = f & " AND clng([date]) BETWEEN " & CLng(Me.filtre_date1) & " AND " & CLng(Me.filtre_date2) & "" Else f = "clng([date]) BETWEEN " & CLng(Me.filtre_date1) & " AND " & CLng(Me.filtre_date2) & "" End If End If If Not IsNull(Me.filtre_capacité1) And Me.filtre_capacité1 <> "" And Not IsNull(Me.filtre_capacité2) And Me.filtre_capacité2 <> "" Then If f <> "" Then f = f & " AND clng([capacité]) BETWEEN " & CLng(Me.filtre_capacité1) & " AND " & CLng(Me.filtre_capacité2) & "" Else f = "clng([capacité]) BETWEEN " & CLng(Me.filtre_capacité1) & " AND " & CLng(Me.filtre_capacité2) & "" End If End If Me.Filter = f Me.FilterOn = True End Sub
Tu pourrais "coller" un rectangle gris sur le triangle de la liste pour le cacher.
Sinon, tu peux faire une requête avec une jointure entre la table t_Refrence et t_Département et aller "pécher" le nom du département et l'afficher ensuite dans une zone de texte.
A+
tu pourrais utiliser une requête à la place de la table t_references et changer ta zone de liste en zone de texte. Mais auparavant, il faut supprimer l'index sur Département, changer le type de données de Département de texte en numérique et recréer l'index. Ensuite sélectionner la requête à la place de la table
je te reposte ta base modifiée :
AtR_DB_v21.zip
Oh tee_grandbois, je vois que tu es tombé sur mon autre poste ! C'est super sympa d'y répondre, je vais essayer de changer le nom de tous mes champs si le _ pose problème. J'ai pas vraiment eu le temps de revoir la partie codage cet aprem, je vais voir cela demain (pris par le rapport de stage toute la journée aujourd'hui)...
En tout cas merci à vous Je vais voir ce que je peu faire pour la flèche, sinon et si j'ai le temps revoir le système de jointure qui cafouillait quand j'ai testé.
Bonne soirée à vous !
Hello, je n'ai pas vu hier que tu m'avais link en pj la db à laquelle tu as incorporé le code modifié. J'ai testé, mais la recherche ne marche pas :S
Tu avais pu tester chez toi ?
Par ailleurs j'avais posté plus tôt ce matin dans mon autre post : https://www.developpez.net/forums/d1...c/#post9518640
avec le code de René, mais celui la non plus ne marche pas x)
Je prendrais le premier qui fonctionnera je pense ahah si j'arrive à en faire marcher un !
désolé, il y a une erreur dans le code, il faut ajouter le code numérique du département, mais comme le champ se nomme Département dans les 2 tables, il faut lui donner un alias dans la requête rq_recherche :Hello, je n'ai pas vu hier que tu m'avais link en pj la db à laquelle tu as incorporé le code modifié. J'ai testé, mais la recherche ne marche pas :S
Tu avais pu tester chez toi ?
et modifier le code du bouton b_recherche pour utiliser le champ no_département à la place de Département :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT t_références.N°, t_références.Localisation, t_références.Marché, t_références.[Maitre d'ouvrage], t_références.Mission, t_références.Filière, t_références.Rejet, t_références.Effluent, t_références.Capacité, t_références.Unité, t_références.Date, t_références.Certificat, t_références.Département AS no_département, t_départements.Département FROM t_références INNER JOIN t_départements ON t_références.Département = t_départements.N°;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 Private Sub b_recherche_Click() f = "" If Not IsNull(Me.filtre_département) And Me.filtre_département <> "" Then If f <> "" Then f = f & " AND no_département = " & Me.filtre_département Else f = "no_département = " & Me.filtre_département End If End If If Not IsNull(Me.filtre_date1) And Me.filtre_date1 <> "" And Not IsNull(Me.filtre_date2) And Me.filtre_date2 <> "" Then If f <> "" Then f = f & " AND clng([date]) BETWEEN " & CLng(Me.filtre_date1) & " AND " & CLng(Me.filtre_date2) & "" Else f = "clng([date]) BETWEEN " & CLng(Me.filtre_date1) & " AND " & CLng(Me.filtre_date2) & "" End If End If If Not IsNull(Me.filtre_capacité1) And Me.filtre_capacité1 <> "" And Not IsNull(Me.filtre_capacité2) And Me.filtre_capacité2 <> "" Then If f <> "" Then f = f & " AND clng([capacité]) BETWEEN " & CLng(Me.filtre_capacité1) & " AND " & CLng(Me.filtre_capacité2) & "" Else f = "clng([capacité]) BETWEEN " & CLng(Me.filtre_capacité1) & " AND " & CLng(Me.filtre_capacité2) & "" End If End If Me.Filter = f Me.FilterOn = True End Sub
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager