Microsoft Access 掲示板

ACCESSのテーブルのデータ転記について

2 コメント
views
4 フォロー

テーブル2があります。

主キーはIDで、オートナンバー型です。

日時は、日付型です。

やりたいことは、当日の日付を抽出条件として、部署を抽出したいのです。

2022/12/21なら、

営業1
営業1
営業1
営業1
営業1
営業1
営業1
営業1
営業2
営業2
営業2

この抽出結果を、

F_2の、非連結のテキストボックスに書き出したいのです。


Sub Search1_dao()
  
  Dim ctDBname As String: ctDBname = CurrentProject.Path & "\" & "sub.accdb"
  
  Dim Ws As Workspace
  Dim db As DAO.Database
  Dim Rs As DAO.Recordset
  Dim strCriteria As String
  Dim myarray As Variant

  Set Ws = DBEngine.Workspaces(0)
  Set db = Ws.OpenDatabase(ctDBname)
  Set Rs = db.OpenRecordset("テーブル2", dbOpenSnapshot)
  strCriteria = "日時 = #" & Date & "#"
  Rs.FindFirst strCriteria
  Do Until Rs.NoMatch
   
     
    Debug.Print Rs![部署]
    Rs.FindNext strCriteria
    
  Loop
 
  Rs.Close
  db.Close

End Sub

Debug.Print Rs![部署]のところを

Forms![F_2]![テキスト0] =  Rs![部署]

このように単純に書いたら、オブジェクトがありませんとなりました。
配列等を利用するのかと思い、試したのですが、できませんでした。

お手数ですが、、ご教示をお願いします。画像1
画像1

えいじ
作成: 2022/12/21 (水) 23:51:07
最終更新: 2022/12/21 (水) 23:51:59
通報 ...
1

「F_2」フォームは開いた状態て実行してますか。
テキストボックス名は「テキスト0」で間違いないですか。
Debug.Print でイミディエイトウィンドウには正しく出力されてますか。

コードとしては、Forms![F_2]![テキスト0] =  Rs![部署]だと上書きしますので、最後の1件のみの表示になります。
下記のようにすれば、改行されて追加されます。

Forms![F_2]![テキスト0] = Forms![F_2]![テキスト0] & Rs![部署] & vbCrLf
2
えいじ 2022/12/23 (金) 11:01:24

hatena様

遅くなり申し訳ございません。

できました。
ありがとうございました。