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

Macros et VBA Excel Discussion :

Requete Sous Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 209
    Points : 103
    Points
    103
    Par défaut Requete Sous Excel
    Bonjour à tous

    j'ai quelque requete à executer sous excel, mais j'arrive pas a visualisé le resultat puisque ça me renvoi NULL sachant que ma base de données est sous access voici mon code

    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
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim strSQL As String
    Dim myCount As Integer
    Dim rsCount As Integer
     
    Set db = DAO.OpenDatabase("m:\PublicLCommun\SUIVI DE PRODUCTION\Stage Yassine\Suivie de Production.mdb", False, False)
       strSQL = "SELECT Brûlure) AS [SommeDeBrûlure],Sum(Givrage) AS [SommeDeGivrage],Sum([Ligne de soudure]) AS [SommeDeLigne de soudure],Sum(Tache) AS [SommeDeTache],Sum([Manque matière]) AS [SommeDeManque matière],Sum(Arrachement) AS [SommeDeArrachement],Sum(Bavure) AS [SommeDeBavure],Sum(Périphérique) AS [SommeDePériphérique],Sum(Retassure) AS [SommeDeRetassure],Sum([Choc / Rayure]) AS [SommeDeChoc / Rayure],Sum([Démarrage / Redémarrage]) AS [SommeDeDémarrage / Redémarrage],Sum(Composant) AS [SommeDeComposant],Sum(Réappairage) AS [SommeDeRéappairage],Avg(Qualité) AS [SommeDeQualité] FROM Tableau Where (Equipe LIKE 'AM') and date Like " & Feuil4.Range("B3")
       Set rs = db.OpenRecordset(strSQL, DAO.dbOpenSnapshot)
     
          Feuil2.Range("C10").Value = rs.Fields(0).Value
          Feuil2.Range("C11") = Round(rs.Fields("[SommeDeGivrage]"), 2)
          Feuil2.Range("C12") = Round(rs.Fields("[SommeDeLigne de soudure]"), 2)
          Feuil2.Range("C13") = Round(rs.Fields("[SommeDeTache]"), 2)
          Feuil2.Range("C14") = Round(rs.Fields("[SommeDeManque matière]"), 2)
          Feuil2.Range("C15") = Round(rs.Fields("[SommeDeArrachement]"), 2)
          Feuil2.Range("C16") = Round(rs.Fields("[SommeDeBavure]"), 2)
          Feuil2.Range("C17") = Round(rs.Fields("[SommeDePériphérique]"), 2)
          Feuil2.Range("C18") = Round(rs.Fields("[SommeDeRetassure]"), 2)
          Feuil2.Range("C19") = Round(rs.Fields("[SommeDeChoc / Rayure]"), 2)
          Feuil2.Range("C20") = Round(rs.Fields("[SommeDeDémarrage / Redémarrage]"), 2)
          Feuil2.Range("C21") = Round(rs.Fields("[SommeDeComposant]"), 2)
          Feuil2.Range("C22") = Round(rs.Fields("[SommeDeRéappairage]"), 2)
          Feuil2.Range("C23") = Round(rs.Fields("[SommeDeQualité]"), 2)
    rs.MoveLast
    myCount = rs.RecordCount
    rs.MoveFirst
     
    'close recordset
    rs.Close
    Set db = Nothing
    Question :

    1-Mon code est il ecrit correctement?
    2-Ma requete SQL est elle just?
    3-Mon probleme d'affichage à quoi il est du?

    Mike merci de ta remarque je l'avais fais sur mon code
    Merci à vous d'avance

  2. #2
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    Bonjour,

    tu ne devrais pas remplacer rs1 par rs?
    car il ne correspond à rien dans le code que tu donnes
    de plus il y a une parenthèse fermée dans la clause select de la requete qui est inutile.
    ici

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 209
    Points : 103
    Points
    103
    Par défaut
    merci maykeul

    mais je crois pas que c'est ça qui cloche vu que je l'avais corriger dans mon code

  4. #4
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    essaye ça
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim strSQL As String
    Dim myCount As Integer
    Dim rsCount As Integer
    Dim I
     
    Set db = DAO.OpenDatabase("m:\PublicLCommun\SUIVI DE PRODUCTION\Stage Yassine\Suivie de Production.mdb", False, False)
    strSQL = "Select Brûlure AS [SommeDeBrûlure]," & _
                 "Sum(Givrage) AS [SommeDeGivrage]," & _
                 "Sum([Ligne de soudure]) AS [SommeDeLigne de soudure]," & _
                 "Sum(Tache) AS [SommeDeTache]," & _
                 "Sum([Manque matière]) AS [SommeDeManque matière]," & _
                 "Sum(Arrachement) AS [SommeDeArrachement]," & _
                 "Sum(Bavure) AS [SommeDeBavure]," & _
                 "Sum(Périphérique) AS [SommeDePériphérique]," & _
                 "Sum(Retassure) AS [SommeDeRetassure]," & _
                 "Sum([Choc / Rayure]) AS [SommeDeChoc / Rayure]," & _
                 "Sum([Démarrage / Redémarrage]) AS [SommeDeDémarrage / Redémarrage]," & _
                 "Sum(Composant) AS [SommeDeComposant]," & _
                 "Sum(Réappairage) AS [SommeDeRéappairage]," & _
                 "Avg(Qualité) AS [SommeDeQualité] " & _
             "FROM Tableau " & _
             "Where (Equipe LIKE 'AM') and date Like '" & Feuil4.Range("B3") & "';"
    Set rs = db.OpenRecordset(strSQL, DAO.dbOpenSnapshot)
     
    Feuil2.Range("C10").Value = rs.Fields(0).Value
    With rs
        For I = 1 To rs.Fields.Count
            Feuil2.Range("C10").Offset(I, 0) = Round(rs.Fields(I, 2))
        Next I
    End With
     
    rs.MoveLast
    myCount = rs.RecordCount
    rs.MoveFirst
     
    'close recordset
    rs.Close
    Set db = Nothing

  5. #5
    Membre expérimenté Avatar de mayekeul
    Inscrit en
    Août 2005
    Messages
    1 369
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 1 369
    Points : 1 665
    Points
    1 665
    Par défaut
    sorry, j'avais oublié de faire la première somme

    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
    Dim strSQL As String
    Dim myCount As Integer
    Dim rsCount As Integer
    Dim I
     
    Set db = DAO.OpenDatabase("m:\PublicLCommun\SUIVI DE PRODUCTION\Stage Yassine\Suivie de Production.mdb", False, False)
    strSQL = "Select Sum Brûlure AS [SommeDeBrûlure]," & _
                 "Sum(Givrage) AS [SommeDeGivrage]," & _
                 "Sum([Ligne de soudure]) AS [SommeDeLigne de soudure]," & _
                 "Sum(Tache) AS [SommeDeTache]," & _
                 "Sum([Manque matière]) AS [SommeDeManque matière]," & _
                 "Sum(Arrachement) AS [SommeDeArrachement]," & _
                 "Sum(Bavure) AS [SommeDeBavure]," & _
                 "Sum(Périphérique) AS [SommeDePériphérique]," & _
                 "Sum(Retassure) AS [SommeDeRetassure]," & _
                 "Sum([Choc / Rayure]) AS [SommeDeChoc / Rayure]," & _
                 "Sum([Démarrage / Redémarrage]) AS [SommeDeDémarrage / Redémarrage]," & _
                 "Sum(Composant) AS [SommeDeComposant]," & _
                 "Sum(Réappairage) AS [SommeDeRéappairage]," & _
                 "Avg(Qualité) AS [SommeDeQualité] " & _
             "FROM Tableau " & _
             "Where (Equipe LIKE 'AM') and date Like '" & Feuil4.Range("B3") & "';"
    Set rs = db.OpenRecordset(strSQL, DAO.dbOpenSnapshot)
     
    Feuil2.Range("C10").Value = rs.Fields(0).Value
    With rs
        For I = 1 To rs.Fields.Count
            Feuil2.Range("C10").Offset(I, 0) = Round(rs.Fields(I, 2))
        Next I
    End With

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 209
    Points : 103
    Points
    103
    Par défaut
    Merci à toi Resolu

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

Discussions similaires

  1. Automatiser une requete sous Excel
    Par alebihan83 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 29/08/2008, 20h44
  2. Execution d'une requete sous excel-debutant en excel
    Par Kalvin_20 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 16/05/2008, 11h50
  3. Requete sous excel
    Par Kalvin_20 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/05/2008, 22h23
  4. Requete sous Excel
    Par jpenja dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/11/2007, 09h01
  5. [VBA-E]requete sous excel
    Par isa21493 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/02/2006, 10h50

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