Rechercher : dans
Par :

[VBA] : Lire un RecordSet

Dernière réponse le 9 jan 2008 à 19:43:16 jeate, le 11 avr 2006 à 16:08:20 
 Signaler ce message aux modérateurs

Bonjour,

J'aimerais prendre les éléments de mon recordSet et les mettre dans une string et c'est pour ça que j'utilise la méthode GetString mais cela ne marche pas. Qqn pourrait me dire pk ou me conseiller une autre méthode ?

Voici mon code :

Public Function EmailToSend_Click()
Set cdb = CurrentDb()
Dim SqlSelectRecepients As String

SqlSelectRecepients = "SELECT myTableId.mySpalteEmail FROM myTableId;"
Set rst_SqlSelectRecepients = cdb.OpenRecordset(SqlSelectRecepients)

' ERREUR ICI : "cet objet ne gère pas cette propriété"
txt = rst_SqlSelectRecepients.GetString(adClipString)

Meilleures réponses pour « [VBA] : Lire un RecordSet » dans :
[VBA] Ecrire/lire une série de TextBox en une seule Sub VoirEn VBA, les TextBox ne disposent pas d'un index et dans la plupart des cas, pour entrer du texte, on procède par.. TextBox1.Text = Cells(2,1).value TextBox2.Text = Cells(2,2).value TextBox3.Text = Cells(2,3).value Et l'inverse pour lire les...
Lire les sous-titres VoirCertains films possèdent des sous-titres dans un fichier à part, possédant généralement l'extension .srt, .ssa ou .sub. Le plus simple pour lire les sous-titres est de renommer le fichier de sous-titres comme le fichier vidéo (à l'exception de...
Lire les flux audio/vidéo en streaming VoirCette astuce s´adresse a toute personne fatiguée de ne pas pouvoir lire ou lire avec difficulté les fichiers en "streaming" disponible sur le net. MediaPlayerConnectivity Cette solution s'appelle MediaPlayerConnectivity. Fonctionnalités ...

1

blux, le 12 avr 2006 à 09:53:40
  • +2

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)

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 ?
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

2

jeate, le 12 avr 2006 à 11:56:31

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 ?

Répondre à jeate

3

blux, le 12 avr 2006 à 12:48:20

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 :

Set Rs = CurrentDb.OpenRecordset("Table1", dbOpenSnapshot, dbReadOnly)
?
A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

4

jeate, le 12 avr 2006 à 12:58:54

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

Répondre à jeate

5

badrelimane, le 9 jan 2008 à 11:18:59

Alors je fait une base de données qui gére un stock mais je trouve des diffuclté
par exemple j'aime crée un bouton qui fait deux opération en mémé temps
il fiat la mis à jours du tableau produit
il fait un adjout dans le tableau opération effectue
aide mois.
merci </code</gras>></gras></gras>

Répondre à badrelimane

6

 jeate, le 9 jan 2008 à 19:43:16

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?

Répondre à jeate