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 :

Erreur de requête SQL à From [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 218
    Par défaut Erreur de requête SQL à From
    Bonjour,

    j'ai besoin de votre aide.
    J'ai adapté une macro pour rechercher des cellules dans un fichier source fermé, en utilisant une requête SQL.

    Je fais le choix dans mes application de créer une feuille paramètre où j'inscris des éléments variables, donc le nom du tableau qui pourrait être ainsi changé sans entrer dans le VBA.


    Dans la macro d'origine

    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
    Function SommeSi(fichier, champCrit, critere, champSomme)
     'Microsoft ActiveX 2.8 doit être coché
     Dim Cnn As New ADODB.Connection
     Dim rs As New ADODB.Recordset
     Chemin = ActiveWorkbook.Path & "\" & fichier
     chaineConnect = "Provider=MSDASQL.1;DSN=Excel Files;DBQ=" & Chemin & ";HDR=Yes';"
     Cnn.Open chaineConnect
    
    Sql = "SELECT SUM(" & champSomme & ") From [maBD] where " & champCrit & "='" & critere & "'"
    ' Sql = "SELECT SUM(" & champSomme & ") From Range("Paramètre!B6").value where " & champCrit & "='" & critere & "'"
    
      rs.Open Sql, Cnn
     SommeSi = rs(0)
     rs.Close
     Cnn.Close
    End Function
    maBD = est un tableau dans le fichier source fermé. Nom="maBD"

    mais ma syntaxe ne fonctionnement pas, lorsque je vais la lire la valeur dans ma feuille Source

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sql = "SELECT SUM(" & champSomme & ") From Range("Paramètre!B6").value where " & champCrit & "='" & critere & "'"

    Je vous remercie par avance de votre aide

    bonne soirée
    Christian

  2. #2
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sql = "SELECT SUM(" & champSomme & ") From " & Range("Paramètre!B6").value & " where " & champCrit & "='" & critere & "'"
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 218
    Par défaut
    Bonjour Alain

    Merci beaucoup pour votre aide.

    passez de bonne fête de fin d'année
    ainsi qu'à la communauté

    Christian

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

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