{Access} requete sql

Bonjour,

voila mon probleme des que j 'essai d 'executer une requete sql j'ai un souci
Faut il mlettre quelque chose au debut pour dire qu'on execute du sql ?

voici ce que je fais
Dim strsql As String
strsql = SELECT PRODUIT.[Code Produit], PRODUIT.nom_produit, CATEGORIE.code_categorie, CATEGORIE.nom_categorie
FROM CATEGORIE INNER JOIN PRODUIT ON CATEGORIE.code_categorie = PRODUIT.code_categorie;

je sais que le code est bon car je l'ai repris de ma requete que j'ai faites sous access merci de m'aider
Configuration: Windows XP
Firefox 3.0.11

16 réponses

  1. bon ok merci bcp de ton aide bonne soiree
    0
    1. Bin, il y a moyen de créer une requête en VBA puis de l'exécuter mais je ne me suis jamais compliqué la vie jusque là...

      On trouve des exemples dans l'aide pour créer tables et requêtes... pour moi, c'est du grec!
      0
      1. encore moi

        alors j'ai tester docmd.openquery "nom requete "

        cela fonctionne

        mais il n'y a pas moyen d'ecrire une requete sql dans vb editor?????

        merci pour tout en tout k
        0
        1. ok je vais tester ca !!!
          0
          1. Excuse moi, je pense que je m'égare...

            Je viens de relire l'aide.
            Si j'ai bien compris, DoCmd.RunSQL ne fonctionne qu'avec les requêtes mise à jour ou action qui modifient la base, elle n'affiche pas la requête selection.

            Je pense qu'il faut passer par DoCmd.OpenQuery et créer auparavant la requête à ouvrir.

            Désolé de t'avoir induit en erreur.

            vois dans l'aide la syntaxe exacte.
            0
            1. re encore moi:

              voici la requete faite avec acces

              SELECT nomnom.nom, nomnom.prenom FROM nomnom;

              j 'ai mis ca dans mon sub mais rien a faire c grave ca !!!
              j ai teste :

              sql = "SELECT nomnom.nom, nomnom.prenom FROM nomnom"
              DoCmd.runsql (sql)

              mais NON!!!
              avec sans les " mais tjs pareil
              0
              1. g essayé :

                runsql = "SELECT nom FROM nomnom WHERE nom = 'dupond'"

                pas de message d 'erreur mais rien ne s'affiche

                runsql "SELECT nom FROM nomnom WHERE nom = 'dupond'"
                message d'erreur syntaxe

                runsql = "SELECT nom FROM nomnom WHERE nom = 'dupond'"
                docmd.runsql runsql

                message d 'erreur

                merci a vous !
                0
                1. non ca ne marche pas !!!!!
                  0
                  1. salut

                    j'ai essayé mais ce n'est pas du tout pareil!!!!
                    j'essai ce que tu ma dis
                    merci
                    0
                    1. nonnon, (c'est le cas de le dire)

                      Essaie:

                      RunSQL "SELECT nom FROM nomnom WHERE nom = 'Dupond' "

                      En fait, la moindre virgule ou apostrophe peut faire tout foirer, mais il y a un "truc":

                      Crée la requête en mode graphique, affiche la en mode SQL et fais un copier-coller dans l'éditeur VB...
                      0
                      1. re re re re !

                        j'ai essayé ca

                        Dim sql As String

                        sql = "select nom " & _
                        " from nomnom " & _
                        "where nom = 'cedric'"

                        DoCmd.RunSQL sql
                        MsgBox ("mise a jour effectué")

                        End Sub

                        g bien mon msgbox mais rien ne se pase ma requete s'affiche null part

                        merci de m'aider
                        0
                        1. re

                          en fait j explique la j essai quelque chose de simple:Ma table se nome NOMNOM et ma colonne NOM

                          alors:

                          Public Sub test_requete_sql()
                          Dim SQL As String

                          SQL = "Select NOMNOM"
                          from nom.title
                          WHERE nom.title = "Dupond"
                          DoCmd.RunSQL SQL

                          End Sub

                          mais cela ne marche pas cela me dis fonction ou fonction non definis
                          0
                          1. merci cela fonctionne pour un update mais pas pour un select mais je v chercher!!!!!!!!
                            mdr

                            merci
                            0
                            1. Désolé, c'est DoCmd.RunSQL

                              cf exemple de l'aide:

                              Public Sub DoSQL()

                              Dim SQL As String

                              SQL = "UPDATE Employees " & _
                              "SET Employees.Title = 'Regional Sales Manager' " & _
                              "WHERE Employees.Title = 'Sales Manager'"

                              DoCmd.RunSQL SQL

                              End Sub
                              0
                              1. cela ne fonctionne pas quelqu un peu m aider
                                0
                                1. Je pense qu'il faut commencer par RunSQL, mettre entre "" et terminer par ;
                                  0