Filtrage formulaire adossé à requête
Résolu
traderpierre
Messages postés
290
Date d'inscription
Statut
Membre
Dernière intervention
-
traderpierre Messages postés 290 Date d'inscription Statut Membre Dernière intervention -
traderpierre Messages postés 290 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Filtrage formulaire adossé à requête
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss ✓ - Forum Access
- Problème envoi formulaire - Forum Webmastering
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 583
bonjour,
peux-tu partager la source SQL de la requête?
"ça ne fonctionne pas": que se passe-t-il, as-tu un message d'erreur?
on utilise "champ" pour le contenu d'une table, et "contrôle" pour le contenu d'un formulaire.
cela permet d'être plus clair.
que se passe-t'il si tu ouvres le formulaire, et qu'ensuite, tu ouvres la requête?
peux-tu partager la source SQL de la requête?
"ça ne fonctionne pas": que se passe-t-il, as-tu un message d'erreur?
on utilise "champ" pour le contenu d'une table, et "contrôle" pour le contenu d'un formulaire.
cela permet d'être plus clair.
que se passe-t'il si tu ouvres le formulaire, et qu'ensuite, tu ouvres la requête?
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 583
@traderpierre, peux-tu donner suite, ou marquer comme résolu?
Finalement j'ai trouvé la solution et ça fonctionne super bien
dans ma requête Primaire "RechDepense1", j'ai ouverts de nouvelles colonnes correspondant aux colonnes numériques,
Pour chacune des colonnes numériques j'ai introduit une fonction iff.
Ensuite dans le formulaire de ma requête j'ai introduit un champs d'options Nommé "SelectionDesDepenses" avec des boutons radios correspondant aux différentes valeurs de mes iff donc aux différentes valeurs des colonnes ouvertes dans RechDepense1
Puis j'ai effectué une requête secondaire "RechDépense2" répliquant toutes les colonnes de la requête primaire, ensuite j'ai affecté la valeur d'option choisie sur différentes lignes aux différentes colonnes ajoutées dans ma requête .
Ci-dessous code SQL des 2 requêtes.
Requête primaire :
SELECT Dépenses.ID_Dépenses, Dépenses.[Année Concernée], Dépenses.Mois, Dépenses.[Appartement Concerné], Dépenses.[Total Syndic], Dépenses.[Syndic Imput Locatif], Dépenses.[Frais Entretien Réparation], Dépenses.[Impôts Fonciers], Dépenses.[Majoration Foncier 8%], Dépenses.[Frais Enlèvement Ordures], Dépenses.[Assurance Multirisque], Dépenses.[Assurance Emprunt], Dépenses.[Intérêts emprunts], Dépenses.[Frais gestion banque], Dépenses.[Amortissement loi de Robien], Dépenses.Divers1, Dépenses.Divers2, IIf([Syndic Imput Locatif]>0,1,0) AS SyndicLocatif, IIf([Frais Entretien Réparation]>0,2,0) AS EntrRepar, IIf([Impôts Fonciers]>0,3,0) AS Foncier, IIf([Frais Enlèvement Ordures]>0,4,0) AS Ordures, IIf([Assurance Multirisque]>0,5,0) AS AssurMulti, IIf([Assurance Emprunt]>0,6,0) AS AssurEmpr, IIf([Intérêts emprunts]>0,7,0) AS InteretEmpr, IIf([Frais gestion banque]>0,8,0) AS FraisGestBanq, IIf([Amortissement loi de Robien]>0,9,0) AS DeRobien, IIf([Divers1]>0,10,0) AS FraisDivers1, IIf([Divers2]>0,11,0) AS FraisDivers2, 12 AS [Toutes Dépenses]
FROM Dépenses
WHERE (((Dépenses.[Année Concernée]) Like "*" & [Formulaires]![RechDepense2]![AnneeDepenseRech] & "*") AND ((Dépenses.Mois) Like "*" & [Formulaires]![RechDepense2]![DepenseMoisRech] & "*") AND ((Dépenses.[Appartement Concerné]) Like "*" & [Formulaires]![RechDepense2]![DepenseAppartementRech] & "*"));
Requêtes secondaire :
SELECT RechDepense1.ID_Dépenses, RechDepense1.[Année Concernée], RechDepense1.Mois, RechDepense1.[Appartement Concerné], RechDepense1.[Total Syndic], RechDepense1.[Syndic Imput Locatif], RechDepense1.[Frais Entretien Réparation], RechDepense1.[Impôts Fonciers], RechDepense1.[Majoration Foncier 8%], RechDepense1.[Frais Enlèvement Ordures], RechDepense1.[Assurance Multirisque], RechDepense1.[Assurance Emprunt], RechDepense1.[Intérêts emprunts], RechDepense1.[Frais gestion banque], RechDepense1.[Amortissement loi de Robien], RechDepense1.Divers1, RechDepense1.Divers2, RechDepense1.SyndicLocatif, RechDepense1.EntrRepar, RechDepense1.Foncier, RechDepense1.Ordures, RechDepense1.AssurMulti, RechDepense1.AssurEmpr, RechDepense1.InteretEmpr, RechDepense1.FraisGestBanq, RechDepense1.DeRobien, RechDepense1.FraisDivers1, RechDepense1.FraisDivers2, RechDepense1.[Toutes Dépenses]
FROM RechDepense1
WHERE (((RechDepense1.SyndicLocatif)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.EntrRepar)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.Foncier)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.Ordures)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.AssurMulti)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.AssurEmpr)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.InteretEmpr)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisGestBanq)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.DeRobien)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisDivers1)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisDivers2)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.[Toutes Dépenses])=Forms!RechDepense2!SelectionDesDepenses));
dans ma requête Primaire "RechDepense1", j'ai ouverts de nouvelles colonnes correspondant aux colonnes numériques,
Pour chacune des colonnes numériques j'ai introduit une fonction iff.
Ensuite dans le formulaire de ma requête j'ai introduit un champs d'options Nommé "SelectionDesDepenses" avec des boutons radios correspondant aux différentes valeurs de mes iff donc aux différentes valeurs des colonnes ouvertes dans RechDepense1
Puis j'ai effectué une requête secondaire "RechDépense2" répliquant toutes les colonnes de la requête primaire, ensuite j'ai affecté la valeur d'option choisie sur différentes lignes aux différentes colonnes ajoutées dans ma requête .
Ci-dessous code SQL des 2 requêtes.
Requête primaire :
SELECT Dépenses.ID_Dépenses, Dépenses.[Année Concernée], Dépenses.Mois, Dépenses.[Appartement Concerné], Dépenses.[Total Syndic], Dépenses.[Syndic Imput Locatif], Dépenses.[Frais Entretien Réparation], Dépenses.[Impôts Fonciers], Dépenses.[Majoration Foncier 8%], Dépenses.[Frais Enlèvement Ordures], Dépenses.[Assurance Multirisque], Dépenses.[Assurance Emprunt], Dépenses.[Intérêts emprunts], Dépenses.[Frais gestion banque], Dépenses.[Amortissement loi de Robien], Dépenses.Divers1, Dépenses.Divers2, IIf([Syndic Imput Locatif]>0,1,0) AS SyndicLocatif, IIf([Frais Entretien Réparation]>0,2,0) AS EntrRepar, IIf([Impôts Fonciers]>0,3,0) AS Foncier, IIf([Frais Enlèvement Ordures]>0,4,0) AS Ordures, IIf([Assurance Multirisque]>0,5,0) AS AssurMulti, IIf([Assurance Emprunt]>0,6,0) AS AssurEmpr, IIf([Intérêts emprunts]>0,7,0) AS InteretEmpr, IIf([Frais gestion banque]>0,8,0) AS FraisGestBanq, IIf([Amortissement loi de Robien]>0,9,0) AS DeRobien, IIf([Divers1]>0,10,0) AS FraisDivers1, IIf([Divers2]>0,11,0) AS FraisDivers2, 12 AS [Toutes Dépenses]
FROM Dépenses
WHERE (((Dépenses.[Année Concernée]) Like "*" & [Formulaires]![RechDepense2]![AnneeDepenseRech] & "*") AND ((Dépenses.Mois) Like "*" & [Formulaires]![RechDepense2]![DepenseMoisRech] & "*") AND ((Dépenses.[Appartement Concerné]) Like "*" & [Formulaires]![RechDepense2]![DepenseAppartementRech] & "*"));
Requêtes secondaire :
SELECT RechDepense1.ID_Dépenses, RechDepense1.[Année Concernée], RechDepense1.Mois, RechDepense1.[Appartement Concerné], RechDepense1.[Total Syndic], RechDepense1.[Syndic Imput Locatif], RechDepense1.[Frais Entretien Réparation], RechDepense1.[Impôts Fonciers], RechDepense1.[Majoration Foncier 8%], RechDepense1.[Frais Enlèvement Ordures], RechDepense1.[Assurance Multirisque], RechDepense1.[Assurance Emprunt], RechDepense1.[Intérêts emprunts], RechDepense1.[Frais gestion banque], RechDepense1.[Amortissement loi de Robien], RechDepense1.Divers1, RechDepense1.Divers2, RechDepense1.SyndicLocatif, RechDepense1.EntrRepar, RechDepense1.Foncier, RechDepense1.Ordures, RechDepense1.AssurMulti, RechDepense1.AssurEmpr, RechDepense1.InteretEmpr, RechDepense1.FraisGestBanq, RechDepense1.DeRobien, RechDepense1.FraisDivers1, RechDepense1.FraisDivers2, RechDepense1.[Toutes Dépenses]
FROM RechDepense1
WHERE (((RechDepense1.SyndicLocatif)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.EntrRepar)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.Foncier)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.Ordures)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.AssurMulti)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.AssurEmpr)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.InteretEmpr)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisGestBanq)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.DeRobien)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisDivers1)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.FraisDivers2)=Forms!RechDepense2!SelectionDesDepenses)) Or (((RechDepense1.[Toutes Dépenses])=Forms!RechDepense2!SelectionDesDepenses));