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

Access Discussion :

Définition d'un Recordset


Sujet :

Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2006
    Messages : 289
    Points : 158
    Points
    158
    Par défaut Définition d'un Recordset
    Salut à tous,

    Je voudrais envoyer des mails à partir des adresses email d'une requête dont le résultat est intégrer dans une table _export.
    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
    Dim db As database, qd As QueryDef
    Dim rstData As Recordset, rstTemplate As Recordset
    Dim strTo As String, strTitle As String, strHTML As String, strWork As String
    Call export
    DoCmd.OpenTable "_export"
    DoCmd.Close acTable, "_export"
    Set db = CurrentDb
    Set rstData = db.OpenRecordset("_export") 'incompatibilte de type
     Do Until rstData.EOF
            ' Ajoute l'adresse mail
            strTo = strTo & rstData!EMAIL & ";"
            ' Va au prochain enregistrement
            rstData.MoveNext
        Loop
        ' Ferme le recordset
        rstData.Close
        Set rstData = db.OpenRecordset("_export")
            Set rstTemplate = db.OpenRecordset( _
            "SELECT * FROM T_HTML " & _
            "WHERE Template = 'SansChamps' " & _
            "ORDER By TemplateSeq")
        Do Until rstData.EOF
            rstTemplate.MoveFirst
            strWork = rstTemplate!TemplateHTML
            strWork = Replace(strWork, "[DATE]", Format(DATE, "mmmm d, yyyy"))
            strHTML = strWork
            rstData.MoveNext
        Loop
    'envoi du msg
    If Not (SendOutlookMsg("Recherche d'une entreprise à reprendre", strTo, strHTML, True)) Then
    'erreur
        MsgBox "Echec de l'envoi du message à " & rstData!EMAIL & ""
    End If
    rstData.Close
    Set rstData = Nothing
    Set db = Nothing
    'Tout bon retourne succés
    Pourtant c'est une table tout ce qu'il y a de plus classique, je comprend pas.

    Merci pour votre aide

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    Salut,

    As tu la référence DAO 3.X de cochée ?
    Oui ? alors modifie les déclarations
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim db As database, qd As QueryDef
    Dim rstData As Recordset, rstTemplate As Recordset
    Par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim db As Dao.database, qd As Dao.QueryDef
    Dim rstData As Dao.Recordset, rstTemplate As Dao.Recordset
    Non ? ben choche là et fais les mêmes modif.

    A+

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2006
    Messages : 289
    Points : 158
    Points
    158
    Par défaut
    J'avais bien la référence de cocher. Mais pourquoi avec as Dao.recordset ça marche alors que as recordset ça ne marche pas?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    Re,

    Si tu ne dit pas que model de recordset tu veux (ADO ou DAO) c'est la première référence qui est choisie. Si dans ta liste ADO est avant DAO, la déclaration que tu utilise ne cadre pas avec un recordset ADO (enfin il me semble que c'ets ça )

    Pour être sûr toujours préciser DAO.recordset dans les déclarations comme ça pas de pb.

    alors ?

    A+

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2006
    Messages : 289
    Points : 158
    Points
    158
    Par défaut
    Merci pour tes précisions.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/05/2008, 16h37
  2. [Sybase] Définition des symboles
    Par SoaB dans le forum Sybase
    Réponses: 5
    Dernier message: 19/03/2003, 23h06
  3. [ADO] Sauvegarde / lecture de recordset
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 20/09/2002, 16h54
  4. Définition de "Métalangage"
    Par No dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 19/07/2002, 14h05

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