1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2014
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : décembre 2014
    Messages : 79
    Points : 47
    Points
    47

    Par défaut faire un graphique sur excel à partir d'une base de donnée access via une requete

    Bonjour à tous

    Je vais expliquer plus clairement mon problème. J'aimerai pouvoir faire des graphiques sur un fichier excel, via des données qui sont sur une base access sans passer par le copie de la requete dans un range sur un feuillet excel... J'ai cherché sur internet, je n'ai rien trouvé à ce sujet qui puisse m'aider... alors j'ai tenté naïvement quelques astuces au début en mettant carrément la requête comme définition mais évidemment ça n'a pas marché... La dernière astuce que j'ai trouvé, c'était faire croire que je rentrais les données à la main mais ça ne fonctionne pas non plus, si quelqu'un sait si y a une manière propre, ou s'il y a une astuce ? Je vous mets mon dernier code là :

    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
    Dim entree As Date, sortie As Date, part As String, plage As String, plage1 As String
     
     
    entree = Range("J10")
    sortie = Range("J11")
    part = Range("J9")
     
    srequete = "SELECT * FROM PORTEFEUILLES_PARTS WHERE DT BETWEEN #" & entree & "# AND #" & sortie & "# AND trim(TYP_PART)='" & part & "'  order by DT desc "
        Set rs = New ADODB.Recordset
        rs.Open srequete, cncon, adOpenDynamic, adLockOptimistic
        If rs.EOF = False Then
            rs.MoveFirst
     
            plage = ""
            plage1 = ""
     
     
            While rs.EOF = False
     
                plage = rs("PART") & "." & plage
                plage1 = "" & rs("DT") & ";" & plage1 & ""
                rs.MoveNext
            Wend
     
                ActiveSheet.ChartObjects("Graphique 1").Activate
                ActiveChart.SetSourceData Source:=" & plage & "
    J'ai aussi essayé avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SeriesCollection(2).Values = plage

    Merci de vos lumières

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Developpeur VBA migrant tranquillement vers C# et VB.Net =]
    Inscrit en
    juillet 2007
    Messages
    12 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Developpeur VBA migrant tranquillement vers C# et VB.Net =]
    Secteur : Finance

    Informations forums :
    Inscription : juillet 2007
    Messages : 12 293
    Points : 27 156
    Points
    27 156

    Par défaut

    Salut,

    question qui n'a peut etre rien a voir, mais ta ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SetSourceData Source:=" & plage & "
    ne devrait-elle pas plutot etre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SetSourceData Source:= plage
    Pas de question technique par MP, je ne réponds pas

    Apprendre à programmer avec Access 2016

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre expert
    Avatar de dysorthographie
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    septembre 2016
    Messages
    2 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2016
    Messages : 2 072
    Points : 3 539
    Points
    3 539
    Billets dans le blog
    1

    Par défaut

    Bonsoir,
    Il me semble qu'il serait préférable de créer un connecteur odbc sur ton fichier excel et ensuite d'établir un lien SQL sur ton graphique!

    Je l'ai déjà fait avec un tableau dynamique croisé pour un graphe je regarde!
    Il dit non avec la tête
    mais il dit oui avec le coeur
    il dit oui à ce qu’il aime
    il dit non au professeur {Jacques PRÉVERT}

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2014
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : décembre 2014
    Messages : 79
    Points : 47
    Points
    47

    Par défaut

    Citation Envoyé par Jean-Philippe André Voir le message
    Salut,

    question qui n'a peut etre rien a voir, mais ta ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SetSourceData Source:=" & plage & "
    ne devrait-elle pas plutot etre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SetSourceData Source:= plage

    salut

    si si cela à voir ^^ mais j'ai essayé cette possibilité aussi, j'ai aussi essayé de mettre entre {} et de retranscrire de la même manière que si je taper à la main dans excel les ajouts de données du graphique, mais ça ne fonctionne pas...

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2014
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : décembre 2014
    Messages : 79
    Points : 47
    Points
    47

    Par défaut

    Citation Envoyé par dysorthographie Voir le message
    Bonsoir,
    Il me semble qu'il serait préférable de créer un connecteur odbc sur ton fichier excel et ensuite d'établir un lien SQL sur ton graphique!

    Je l'ai déjà fait avec un tableau dynamique croisé pour un graphe je regarde!

    Si tu peux m'éclairer sur le lien SQL vers le graphique stp

  6. #6
    Membre expert
    Avatar de dysorthographie
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    septembre 2016
    Messages
    2 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : septembre 2016
    Messages : 2 072
    Points : 3 539
    Points
    3 539
    Billets dans le blog
    1

    Par défaut

    bonjour,
    oui sens problème, mais avant il faut que je trouve l’ampoule pour m’éclairer moi même!

    le premier arrivé attend l'autre.
    Il dit non avec la tête
    mais il dit oui avec le coeur
    il dit oui à ce qu’il aime
    il dit non au professeur {Jacques PRÉVERT}

  7. #7
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2014
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : décembre 2014
    Messages : 79
    Points : 47
    Points
    47

    Par défaut

    J'ai pensé à une astuce en voyant qu'avec un array, cela marche... Mais il faut créer un array avec toutes les valeurs de la base, quelqu'un sait comment procéder pour réaliser cela ? si c'est possible...

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2014
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : décembre 2014
    Messages : 79
    Points : 47
    Points
    47

    Par défaut

    C'est bon j'ai trouvé...

    je créais un tableau plage(i) avec les valeurs de ma requête, et je donne mon tableau, excel le traduit tout seul :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveChart.SeriesCollection(2).Values=plage

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 04/01/2016, 12h30
  2. Réponses: 0
    Dernier message: 09/02/2011, 09h13
  3. Réponses: 1
    Dernier message: 01/04/2010, 22h23
  4. Réponses: 1
    Dernier message: 07/08/2007, 08h49
  5. [base de données]partage d'une base de données
    Par Scrusher dans le forum JDBC
    Réponses: 4
    Dernier message: 02/06/2004, 13h33

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