[VBA] : Lire un RecordSet
Résolu/Fermé
jeate
Messages postés
15
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
6 mai 2006
-
11 avril 2006 à 16:08
jeate - 9 janv. 2008 à 19:43
jeate - 9 janv. 2008 à 19:43
A voir également:
- Recordset vba excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si et excel - Guide
- Déplacer une colonne excel - Guide
- Excel compter cellule couleur sans vba - Guide
5 réponses
blux
Messages postés
26808
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
23 avril 2025
3 335
12 avril 2006 à 09:53
12 avril 2006 à 09:53
Salut,
on peut procéder autrement, en parcourant le recordset et en récupérant les valeurs des champs (avec ! indiquant que l'on parle d'un champ)
Ca irait comme ça ?
on peut procéder autrement, en parcourant le recordset et en récupérant les valeurs des champs (avec ! indiquant que l'on parle d'un champ)
Dim Rs As Recordset Dim toto as String Set Rs = CurrentDb.OpenRecordset("Table1", dbOpenTable, dbReadOnly) Rs.MoveFirst While Not Rs.EOF With Rs toto = !champ1 MsgBox toto & !champ2 End With Rs.MoveNext Wend Rs.Close
Ca irait comme ça ?
Salut! Alors je ne comprends pas très bien ta question...
De plus, un bouton qui fait deux choses à la fois, ça me paraît pas très clair comme tu l'as expliqué. Quand tu clique une fois, il fait l'action X et quand tu cliques deux fois, il fait l'action Y par exemple?
De plus, un bouton qui fait deux choses à la fois, ça me paraît pas très clair comme tu l'as expliqué. Quand tu clique une fois, il fait l'action X et quand tu cliques deux fois, il fait l'action Y par exemple?
jeate
Messages postés
15
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
6 mai 2006
3
12 avril 2006 à 11:56
12 avril 2006 à 11:56
Salut blux !
D'abord, merci de bien vouloir m'aider !
Ben écoute, j'ai essayé ta méthode, mais je reçois toujours l'erreur "Invalid argument" à la ligne :
Set Rs = CurrentDb.OpenRecordset("tblEmail", dbOpenDynaset, dbReadOnly)
Pourtant, ma table tblEmail existe et n'est pas vide (elle contient 3 champs dans la colonne Email)
Saurais-tu pk ça plante ?
D'abord, merci de bien vouloir m'aider !
Ben écoute, j'ai essayé ta méthode, mais je reçois toujours l'erreur "Invalid argument" à la ligne :
Set Rs = CurrentDb.OpenRecordset("tblEmail", dbOpenDynaset, dbReadOnly)
Pourtant, ma table tblEmail existe et n'est pas vide (elle contient 3 champs dans la colonne Email)
Saurais-tu pk ça plante ?
blux
Messages postés
26808
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
23 avril 2025
3 335
12 avril 2006 à 12:48
12 avril 2006 à 12:48
Si je ne m'abuse, l'option dbOpenDynaset permet d'ouvrir l'objet en modification, ce qui me parait un peu incompatible avec le dbReadOnly...
As-tu essayé avec :
As-tu essayé avec :
Set Rs = CurrentDb.OpenRecordset("Table1", dbOpenSnapshot, dbReadOnly)?
jeate
Messages postés
15
Date d'inscription
mercredi 22 décembre 2004
Statut
Membre
Dernière intervention
6 mai 2006
3
12 avril 2006 à 12:58
12 avril 2006 à 12:58
Oui, j'avais essayé, bien pensé qd m !
Et je vous remercie de votre aide, c très gentil !
Entre-temps, g fait un peu différemment et g trouvé la solution, la voici :
Private Sub Commande53_Click()
Set cdb = CurrentDb()
Dim SqlSelectRecepients As String
Dim MonMessage As Object
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.CreateItem(0)
SqlSelectRecepients = "SELECT tblEmail.Email FROM tblEmail;"
Set rst_SqlSelectRecepients = cdb.OpenRecordset(SqlSelectRecepients)
Do Until rst_SqlSelectRecepients.EOF 'Reihe auslesen
myEmail = rst_SqlSelectRecepients!Email
MonMessage.To = MonMessage.To + " " & myEmail & ", "
rst_SqlSelectRecepients.MoveNext
Loop
rst_SqlSelectRecepients.Close
MonMessage.Subject = "Refeering"
MonMessage.Display
Set MonOutlook = Nothing
End Sub
Et je vous remercie de votre aide, c très gentil !
Entre-temps, g fait un peu différemment et g trouvé la solution, la voici :
Private Sub Commande53_Click()
Set cdb = CurrentDb()
Dim SqlSelectRecepients As String
Dim MonMessage As Object
Set MonOutlook = CreateObject("Outlook.Application")
Set MonMessage = MonOutlook.CreateItem(0)
SqlSelectRecepients = "SELECT tblEmail.Email FROM tblEmail;"
Set rst_SqlSelectRecepients = cdb.OpenRecordset(SqlSelectRecepients)
Do Until rst_SqlSelectRecepients.EOF 'Reihe auslesen
myEmail = rst_SqlSelectRecepients!Email
MonMessage.To = MonMessage.To + " " & myEmail & ", "
rst_SqlSelectRecepients.MoveNext
Loop
rst_SqlSelectRecepients.Close
MonMessage.Subject = "Refeering"
MonMessage.Display
Set MonOutlook = Nothing
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question