2つの関連する質問があります。まず、クエリ結果の値をテキストボックスにどのように割り当てるのですか?MS Accessのテキストボックスにクエリ結果を割り当てます。
は、ここで私は、現在、ボタンのクリックイベントに割り当てられているコードです:
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
これは動作しますが、それは、クエリを開き、データシートに結果を表示します。私がしたいのは、ボタンをクリックしてデータシートを見る必要がなく、フォーム上のテキストボックスに結果を表示することです。まず、データシートを開くためにクエリを実行するのではなく、結果を文字列として取得するにはどうすればよいですか?私がウェブ上で見つけたのは、私が書いたように、クエリを実行するのではなく、dlookupを使うことを指しているようですが、私が見つけたものから、dlookupは簡単なクエリを実行するのに適しています。カウントやグループバイなどの複雑な要件を追加する。
第2に、フォームを開いたときにクエリを実行するにはどうすればよいですか?私はイベントで実行するようにトリガーしたいと思っていますが、テキストボックスのプロパティの下で利用できる適切なイベントがないようです。
私はネットワークエンジニアであり、プログラマーやデータベースアナリストではありませんが、私はこのような仕事のすべてが自分のラップに投げ捨てられているということを十分に熟知しています。誰かが苦労しているエンジニアを助けることができるなら、私は確かにそれを感謝します。