Excel VBA質問箱 IV

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

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


34218 / 76738 ←次へ | 前へ→

【47731】Re:アクセスのクエリを実行したい 2
発言  ichinose  - 07/3/21(水) 8:09 -

引用なし
パスワード
   おはようございます。

前回、私が投稿した

www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=46362;id=excel

これに文字列フィルタを追加した別解です
(私は、普段は、sql派?なんですが、レコードセットのFilterを使ってみました。
これも簡単で良いですねえ!!)


userform1更にテキストボックス(Textbox3)を追加してください。

sample.mdbのtblsampというテーブルの文字型フィールドである

dbstrの抽出条件入力用です。


Userform1のCommandbutton2のクリックイベントプロシジャーだけ
以下のように変更します。
(他のコードは前回と同じですよ!!要らないわけではありませんから・・)


'===============================================================
Private Sub CommandButton2_Click()
  Dim dbpath As String
  Dim myRS As Object
  dbpath = ThisWorkbook.Path & "\" & flnm
  Set myRS = CreateObject("adodb.recordset")
  If open_cat(dbpath) = 0 Then
    If exe_cmd(myRS, qry_samp, Array(TextBox1.text, TextBox2.text)) = 0 Then
'パラメータクエリの実行
     With Worksheets("sheet1")
       .Range("f:h").ClearContents
       .Range("f1:h1").Value = Array("dbid", "dbdate", "dbstr")
'***********************************************************************
'追加コード
       If TextBox3.text <> "" Then
        myRS.Filter = "dbstr like '*" & TextBox3.text & "*'"
        End If
'***********************************************************************
       .Range("f2").CopyFromRecordset myRS
       .Range("g:g").NumberFormatLocal = "yyyy/m/d"
       End With
     myRS.Close
    Else
     MsgBox "error"
     End If
    Call close_cat
  Else
    MsgBox "接続失敗"
    End If
  Set myRS = Nothing
End Sub


これで前回と同様の操作(コマンドボタン1をクリック)でデータベースサンプル
を作成した後、

Textbox1とTextbox2に日付範囲をYYYY/MM/DD形式で入力

Textbox3にはフィールドdbstr抽出条件を入力してください。


Textbox1 2007/1/2
textbox2 2007/1/10
textbox3 B

と入力し、コマンドボタン2をクリックしてください。

抽出結果がF列から、

dbid  dbdate   dbstr
2   2007/1/3   BBB

のように表示されます。


上記のサンプルで試された後、実際のDBでも同じ要領で試してみては?

0 hits

【46311】アクセスのクエリを実行したい phoo 07/1/30(火) 13:00 質問
【46313】Re:アクセスのクエリを実行したい neptune 07/1/30(火) 13:29 発言
【46362】Re:アクセスのクエリを実行したい 1 ichinose 07/1/31(水) 21:54 発言
【46363】Re:アクセスのクエリを実行したい 2 ichinose 07/1/31(水) 21:54 発言
【47697】Re:アクセスのクエリを実行したい 2 phoo 07/3/19(月) 17:00 質問
【47709】Re:アクセスのクエリを実行したい 2 ichinose 07/3/20(火) 7:56 発言
【47731】Re:アクセスのクエリを実行したい 2 ichinose 07/3/21(水) 8:09 発言
【47837】Re:アクセスのクエリを実行したい 2 phoo 07/3/23(金) 18:35 お礼
【46318】Re:アクセスのクエリを実行したい Kein 07/1/30(火) 14:39 回答
【46319】Re:アクセスのクエリを実行したい Kein 07/1/30(火) 14:41 発言
【46321】Re:アクセスのクエリを実行したい phoo 07/1/30(火) 15:43 お礼

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