Affecter résultat de la requête à la zone de texte dans MS Access

J'ai deux questions connexes. Tout d'abord, comment puis-je attribuer la valeur de résultat d'une requête vers une zone de texte?

Voici le code que j'ai, actuellement affecté à l'événement click d'un bouton:

Private Sub SeatCount_Click()
Dim db As Database
Dim qdf As QueryDef
Dim sql As String
Dim rs As Recordset

sql = "SELECT Count([Switch Port Matrix].[End Device Type]) AS [CountOfEnd Device Type] FROM [Switch Port Matrix] WHERE ((([Switch Port Matrix].[End Device Type])=""Seat"" Or ([Switch Port Matrix].[End Device Type])=""6AB"") AND (([Switch Port Matrix].Enabled)=1)) GROUP BY [Switch Port Matrix].[Switch Name] HAVING ((([Switch Port Matrix].[Switch Name]) Like """ & Me![Switch Name] & """))"

Set db = CurrentDb()
With db
    On Error Resume Next
    .QueryDefs.Delete "SeatCount"
    Set qdf = .CreateQueryDef("SeatCount", sql)
    DoCmd.OpenQuery "SeatCount"
    .QueryDefs.Delete "SeatCount"
End With
db.Close
qdf.Close

End Sub

Cela fonctionne, mais il ouvre la requête et affiche le résultat dans une feuille de données. Ce que je voudrais faire est d'afficher le résultat dans une zone de texte sur la forme plutôt que d'avoir à cliquer sur un bouton et regarder une feuille de données. Tout d'abord, comment puis-je récupérer le résultat sous la forme d'une chaîne plutôt que de l'exécution de la requête pour ouvrir une feuille de calcul? Ce que j'ai trouvé sur le web semble pointer vers l'utilisation de la fonction rechdom plutôt que sur l'exécution de la requête, comme je l'ai écrit, mais de ce que j'ai trouvé, dlookup semble adapté pour l'exécution de requêtes simples et je n'ai rien trouvé indiquant que vous pouvez ajouter des exigences plus complexes tels que le comte et groupby.

Deuxièmement, comment puis-je exécuter la requête lorsque le formulaire est ouvert? Je suppose que j'ai envie de le déclencher pour s'exécuter sur un événement, mais il ne semble pas être un événement approprié à disposition sous les propriétés de la zone de texte.

Je suis un ingénieur réseau, pas un programmeur ou une base de données analyste, mais j'ai barboté dans l'suffisamment de choses que tous ce genre de travail est l'objet de dumping, à mon tour. Si quelqu'un peut aider à sortir des difficultés de l'ingénieur, je serais certainement apprécier.

InformationsquelleAutor user142865 | 2010-12-03