Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


676 / 9994 ←次へ | 前へ→

【12628】ユーザーフォームからレコードの検索抽出
質問  rinrin  - 14/10/26(日) 19:46 -

引用なし
パスワード
   ”DB購買依頼一覧”フォームの”品名”をダブルクリックすると、、、”検索画面”フォームが立ち上げります。。。

そのテキストボックスにキーワードを入力すると、抽出データが反映されるというプログラムを構築したいのですが、、、」うまく書けません。。。


Option Compare Database
Option Explicit

Private Sub Form_Open(Cancel As Integer)
  DoCmd.MoveSize 5000, 2500, 8000, 3000
End Sub

Private Sub txt品名検索_AfterUpdate()
    Call CallPrivate3
End Sub

Private Sub CallPrivate3()
  Dim StrSQL As String
'サブフォームのレコードセットのSQL文を代入する
  Dim MyName As Variant
'アクティブコントロール名を歳入する変数
  Dim MyVariable As String
'フォーム上で取得した変数名
'DCount関数のレコード数を代入する変数
  
'アクティブなコントロール名を取得する
  MyName = Me.ActiveControl.Name
'初期化
  MyCount = 0
  
'SQL文の条件句の分岐条件をSELECT CASE文で対応して簡素化する
  Select Case MyName

    Case "txt品名検索"
      MyVariable = " WHERE 購買依頼一覧.品名 LIKE '*" & [Forms]![検索画面]![txt品名検索] & "*' ;"

      
''txt品目検索に該当するレコード数をカウントする
'    MyCount = DCount("品名", "購買依頼一覧", "品名 like '*" & [Forms]![検索画面]![txt品名検索] & "*'")
    
    Case "Cmd解除"
      MyVariable = " ;"
      
'全レコード数をカウントする
    MyCount = DCount("品名", "購買依頼一覧")
  End Select
  
'サブフォームのレコードソースに代入するSQL文
  StrSQL = "SELECT * FROM DB購買依頼一覧 " & MyVariable
  
  
こっからしたがわからない

  
'SQL文をサブフォームのレコードソースに代入する
  [Forms]![DB購買依頼一覧].Form.RecordSource = StrSQL

'サブフォームを再表示させる処理
  [Forms]![DB購買依頼一覧]![品名].Form.Requery
  
'レコードが0件のときと1件以上あるときの条件処理
  If MyCount = 0 toThen
    MsgBox ("該当するレコードはありません")
  Else
    MsgBox ("該当するレコードは、" & MyCount & "件です")
  End If
  
  Me.txt件数.Value = MyCount

End Sub


よろしくお願いします。。。

332 hits

【12628】ユーザーフォームからレコードの検索抽出 rinrin 14/10/26(日) 19:46 質問[未読]
【12629】Re:ユーザーフォームからレコードの検索抽出 かるびの 14/10/26(日) 23:49 回答[未読]
【12631】Re:ユーザーフォームからレコードの検索抽出 rinrin 14/10/29(水) 20:53 お礼[未読]

676 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1081089
(SS)C-BOARD v3.8 is Free