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 :

dcount dans access avec Excel et Sharepoint [AC-2007]


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut dcount dans access avec Excel et Sharepoint
    Bonjour,
    titre énigmatique, mais j'avoue que là j'ai un truc super bizarre que je ne comprends pas.
    J'ai une requête dans Access qui va me chercher le Top 30 des plus gros montants dans une table Access.
    Le résultat est ensuite lié dans un onglet Excel (Tableau).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Rang: VraiFaux(EstNull([Total Euro]);Null;CpteDom("*";"reqTop30GTSAstreintesTmp";"[Total Euro] >" & Int([Total Euro])))
    Si je laisse mes données dans Access tout se passe bien et je récupère le résultat attendu dans Excel (un tableau).

    Tout se détraque quand je veux que mes données soient dans une liste Sharepoint liée à Access.
    Pour faire simple, ma requête de calcul va chercher dans une liste Sharepoint au lieu de Access.
    Quoi du plus trivial en apparence !

    Les données sont bien restituées sans problème par la requête Access, mais pas dans Excel, j'ai le message
    "Les données n'ont pas pu être récupérées de la base de données" etc etc, comme si la requête comportait une fonction interdite.
    A priori c'est le dcount qui lui pose problème car si je remplace cette partie ça marche. Sauf que pourquoi le dcount ne marche pas si les données sont dans Sharepoint alors qu'avec la même fonction ça marche si les données sont dans une table.

    Donc finalement la question que je me pose c'est,
    en quoi le fait que les données soient dans une liste Sharepoint au lieu d'une table locale fait que le Dcount ne marche pas dans Excel.
    Je précise que la base est bien en ANSI92

    Je ne sais pas si j'ai été assez clair dans mes explications.

    Merci de votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonsoir,

    Ne pouvez-vous pas créer une table temporaire alimentée par cette requête, car ces fonctions de domaine ne sont reconnues que dans Access.

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Bonsoir,
    Merci pour ce retour rapide.

    Si je comprends la réponse dcount n'est pas reconnu pour une liste sharepoint
    Sauf que si je remplace par ça, ça marche (même si cela n'a pas de sens fonctionnellement)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Rang: VraiFaux(EstNull([Total Euro]);Null;CpteDom("*";"reqTop30GTSAstreintesTmp";1))
    Donc c'est cette partie qui lui pose problème
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "[Total Euro] >" & Int([Total Euro])

    Pour une table temporaire j'y ai pensé, mais malheureusement pas possible car j'ai aussi sur le même principe des requêtes construites dynamiquement et dont le nombre est variable.
    et puis les données sont confidentielles, ça m'embête que ce soit dans un fichier de base de façon permanente, n'importe qui qui accède au PC peut y avoir accès.

  4. #4
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Je pourrais poser la question plus simplement.
    Je sais ne garder que les 30 premiers enregistrements.
    Comment faire en sorte que les lignes soient numérotées de 1 à 30 ?

    Merci

  5. #5
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Essaye avec une sous-requête à la place du cpteDom :

    quelque chose comme ça :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    select champ1, (select count(*) from reqTop30GTSAstreintesTmp As R1 where R1.[Total Euro] >= (reqTop30GTSAstreintesTmp.[Total Euro]) ) as rang
    From reqTop30GTSAstreintesTmp
    ...

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  6. #6
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    169
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 169
    Points : 68
    Points
    68
    Par défaut
    Bonjour,
    c'est super ça marche nickel.
    Je vais maintenant reproduire le principe sur les requêtes de niveau inférieur, aucune raison que ça ne marche pas aussi.

    Reproduit, ça marche impeccable.

    Merci beaucoup, tu m'as fait gagner plein de temps car là je séchais.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/10/2015, 12h45
  2. [AC-2003] Importation d'un fichier excel dans Access avec traitement
    Par Mishe dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/03/2013, 16h23
  3. Importer un fichier excel dans access avec découpage en tables
    Par taz_wanted dans le forum VBA Access
    Réponses: 5
    Dernier message: 26/05/2011, 09h46
  4. Réponses: 5
    Dernier message: 23/11/2010, 12h36
  5. Lire excel et les insérer dans access avec vbscript
    Par regisyves dans le forum VBScript
    Réponses: 3
    Dernier message: 19/06/2010, 07h27

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