IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes et SQL. Discussion :

Sélectionner les résultats d'une requête analyse croisée par mois [AC-2007]


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 49
    Points : 33
    Points
    33
    Par défaut Sélectionner les résultats d'une requête analyse croisée par mois
    Bonsoir,

    Toujours des soucis avec ma base de facturation, même si j'ai bien avancé

    J'ai une requête analyse croisée qui me permet d'extraire des données destinées à l'impression d'un formulaire mensuel d'émargement.

    Dans la requête, il y a un champ [date facture] et j'essaye de sélectionner les enregistrements devant figurer sur l'état par mois.

    J'ai inclus un champ PartDate("m";[date facture]) qui me renvoie bien le mois (par ex. 10 pour octobre, 11 pour novembre..., l'année est indifférente).

    J'ai essayé de mettre [Pour quel mois?] en critère dans ce champ, pour qu'une boite de dialogue s'ouvre à l'appel de l'état mais Access me renvoie :
    "Le moteur de base de données Access ne reconnaît pas "[Pour quel mois ?]" en tant que nom de champ ou expression correcte".

    Comment faire ?
    Sachant que je ne connaît quasiment rien au VBA

    Merci d'avance de votre aide !

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Bonjour
    C'est un problème récurent sur le forum.
    Les analyses croisées ne supportent pas les critères paramétrés, mais uniquement les critères fixes. Mais..... on peut ruser

    Il suffit de connaitre l'ensemble des valeurs pouvant apparaitrent en entête de colonne (c'est ton cas : mois de 1 à 12). Dans ce cas, il suffit de mettre les différentes valeurs séparées par des point virgules (;) dans la propriété Entête de colonnes de la requète. Et ça roule
    Frédéric
    Développeur d'Applications Access

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 35
    Points : 33
    Points
    33
    Par défaut
    C'est aussi mon cas. Peux-tu être plus explicite stp ?

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Re
    Tu te mets en mode création de ta requète.
    Tu affiches les propriétés de la requète (clic droit dans la zone ou apparaissent les tables)
    Dans la propriété En-têtes des colonnes tu mets : 1;2;3;4;5;6;7;8;9;10;11;12

    Je ne peux pas expliquer mieux que ça
    Frédéric
    Développeur d'Applications Access

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 35
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par fgiambelluco Voir le message
    Re
    Tu te mets en mode création de ta requète.
    Tu affiches les propriétés de la requète (clic droit dans la zone ou apparaissent les tables)
    Dans la propriété En-têtes des colonnes tu mets : 1;2;3;4;5;6;7;8;9;10;11;12

    Je ne peux pas expliquer mieux que ça
    OK, j'ai compris le principe, mais pours être encore plus pointilleux et quand on a affaire a des dates (format (date;"mm/aa"), peut-on mettre #01/09#; #02/09#... ?

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 944
    Points : 1 282
    Points
    1 282
    Par défaut
    Re
    Tu devrais essayer !!

    Je pense que cela doit fonctionner, mais que les # ne sont pas nécessaires puisque la fonction format renvoi du Texte
    Frédéric
    Développeur d'Applications Access

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 49
    Points : 33
    Points
    33
    Par défaut Oui mais j'ai déjà des entêtes de colonnes...
    ... et je ne peux pas les changer !

    Y aurait-il un autre moyen de ruser ?

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    supposons une table avec trois champs
    nofact
    datefact
    montant
    pour laquelle je veux un tableau croisé avec en ligne montant, en colonne le mois de datefact, et en valeur le montant pour les mois supérieurs à une valeur entrée par l'utilisateur
    la requête suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    PARAMETERS [entrez mois] Byte;
    TRANSFORM Sum(montant) AS SommeDemontant
    SELECT nofact
    FROM  (SELECT  nofact, Month([datefact]) AS mois, montant
    FROM unetable
    WHERE  Month([datefact])>[entrez mois]) as tempo
    GROUP BY  nofact
    PIVOT  mois;
    permet d'arriver au résultat (analyse croisée avec paramètres)
    Elle est pas belle la vie ?

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 49
    Points : 33
    Points
    33
    Par défaut Merci !
    Merci beaucoup !

    Mais comment faites-vous pour savoir tout ça

    Catherine

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Sélectionner les résultats d'une requète à partir d'un formulaire
    Par marin_kaout dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 29/01/2015, 16h29
  2. Réponses: 0
    Dernier message: 22/03/2012, 14h03
  3. Réponses: 7
    Dernier message: 04/09/2011, 18h14
  4. Sélectionner les résultats d'une requête par date
    Par 0sef40 dans le forum Langage SQL
    Réponses: 16
    Dernier message: 19/05/2011, 08h38
  5. [JDBC] Stocker les résultats d'une requête
    Par etiennegaloup dans le forum JDBC
    Réponses: 9
    Dernier message: 26/07/2005, 18h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo