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

VB.NET Discussion :

Retourner une table Access en VB


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 151
    Par défaut Retourner une table Access en VB
    Bonjour,
    Je doit executer une requete en SQL et cette requete doit me retourner 2 champ et j'aimerais que quand je fait appel a cette fonction en SQL, je puisse recuperer les champs de table...
    Voici mon code VB pour le moment qui ne me retourne rien ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Function Recherche(vlettre As String, vindice As Integer)
        For i = 1 To vindice
            Dim SQL As String
            
            Dim rst As DAO.Recordset
            Dim resultat As Integer
            SQL = "Select SUM(Nbr)AS Resultat, Prefab FROM(SELECT Count(*) AS Compteur,Prefab,Compteur*Nb AS nbr FROM RepereConcat WHERE MID(Repere," & i & ",1) LIKE '" & vlettre & "' AND Prefab = Prefab GROUP BY Prefab, Nb)WHERE Prefab=Prefab GROUP By Prefab;"
            Set rst = CurrentDb.OpenRecordset(SQL, dbOpenForwardOnly, dbReadOnly)
            rst.Close
        Next
            
    End Function
    Et donc je vouderais que la fonction me retourne en valeur Prefab et Resulat Comment puis-je faire ???

  2. #2
    Membre averti
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Juin 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2007
    Messages : 26
    Par défaut
    bonjour,
    il y aurai pas une erreur dans ta fonction MID?
    c'est la position de départ qui est demandé.
    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
    Select 
    	SUM(Nbr)AS Resultat, 
    	Prefab 
    FROM
    	(SELECT 
    		Count(*) AS Compteur,
    		Prefab,
    		Compteur*Nb AS nbr 
    	FROM 
    			RepereConcat 
    	WHERE 
    		MID(Repere," & i & ",1) LIKE '" & vlettre & "' 
    		AND Prefab = Prefab 
    	GROUP BY Prefab, Nb)
    WHERE Prefab=Prefab 
    GROUP By Prefab;"

  3. #3
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Déjà utilliser les RecordSet de nos jours, c'est plus que moyen.

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 151
    Par défaut
    Voila ce que j'ai réussis a faire ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Public Function Lettre(vlettre As String, vindice As Integer)
        Dim dbs As Database, qdf As QueryDef, strSQL As String, strSQL2 As String, strSQL3 As String
        strSQL = "Select SUM(Nbr)AS Resultat, Prefab FROM(SELECT Count(*) AS Compteur,Prefab,Compteur*Nb AS nbr FROM RepereConcat WHERE MID(Repere,1,1) LIKE '" & vlettre & "' AND Prefab = Prefab GROUP BY Prefab, Nb)WHERE Prefab=Prefab GROUP By Prefab "
        Set dbs = CurrentDb
        For i = 2 To vindice
            strSQL2 = "Select SUM(Nbr)AS Resultat, Prefab FROM(SELECT Count(*) AS Compteur,Prefab,Compteur*Nb AS nbr FROM RepereConcat WHERE MID(Repere," & i & ",1) LIKE '" & vlettre & "' AND Prefab = Prefab GROUP BY Prefab, Nb)WHERE Prefab=Prefab GROUP By Prefab "
            strSQL = strSQL & " union all " & strSQL2
        Next
            strSQL3 = "Select SUM(Resultat)AS " & vlettre & " , Prefab FROM(" & strSQL & ") Where Prefab =Prefab GROUP BY Prefab;"
            Set qdf = dbs.CreateQueryDef(vlettre, strSQL3)
    End Function
    Ça va créer une requête ex :

    si je fait une requete SQL dans Acces de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Lettre('V',14) AS Expr1
    Ça va me créer une requête qui va s’appeler V
    dedans il y aura 2 paramètre la prefa et le nbr de lettre...
    Après c'est pas exactement ce que j'attendais ... J'aurais préférer que ça me renvoi la table directement dans ma construction de requête initiale...
    Donc pas de création de requête V comme çà je peu directement utiliser la fonction dans des requêtes ...

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

Discussions similaires

  1. Récupérer les mails Outlook dans une table Access
    Par zerrokooll dans le forum VBA Access
    Réponses: 79
    Dernier message: 07/07/2009, 14h22
  2. alimenter automatiquement une table access
    Par Mickey34 dans le forum Access
    Réponses: 8
    Dernier message: 24/11/2004, 17h55
  3. Ajouter un champs dans une table (Access 2000)
    Par Didier100 dans le forum Bases de données
    Réponses: 2
    Dernier message: 12/10/2004, 13h02
  4. insertion d'un type date dans une table access
    Par monstour dans le forum ASP
    Réponses: 7
    Dernier message: 18/06/2004, 16h57
  5. recherche dans une table Access en ASP
    Par D-D dans le forum ASP
    Réponses: 3
    Dernier message: 09/06/2004, 10h12

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