エクセルからアクセスヘADOで接続し、レコードをエクセルに書き出しています。
アクセスのTPWIDには、
「URL」フィールド(テキスト型)
「終了」フィールド(YesNo型)
があります。
(主キーは他のフィールド)
エクセルVBAで
---------------------------------------------------------
Sub test()
Dim CN As New ADODB.Connection
Dim RS As New ADODB.Recordset
CN.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\テーブルのみ.mdb"
RS.Open "SELECT * FROM TPWID", CN, adOpenStatic, adLockOptimistic
RS.Filter = "終了 = " & False
RS.Close: Set RS = Nothing
End Sub
---------------------------------------------------------
とする分には問題なくできますが、実際行いたい行為は下記なのですが
RS.Filter の部分で、
「実行時エラー 3001 引数が間違った型、許容範囲外、又は競合しています」
と言うエラーになってしまいます。
---------------------------------------------------------
Sub test()
Dim CN As New ADODB.Connection
Dim RS As New ADODB.Recordset
CN.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\テーブルのみ.mdb"
RS.Open "SELECT * FROM TPWID", CN, adOpenStatic, adLockOptimistic
RS.Filter = "URL = '" & "www.yahoo.co.jp" & "' or URL = '" & "www.google.co.jp" & "' And 終了 = " & False
RS.Close: Set RS = Nothing
End Sub
---------------------------------------------------------
RS.Filter = "URL = '" & "www.yahoo.co.jp" & "' or URL = '" & "www.google.co.jp" & "' And 終了 = " & False
を
RS.Filter = "URL = '" & "www.yahoo.co.jp" & "' and URL = '" & "www.google.co.jp" & "' And 終了 = " & False
にすれば、エラーは発生しませんが
その次のコードを実行しようとすると
「実行時エラー'3021' BOFとEOFのいずれかTRUEになっていか、または現在のレコードが削除されています。要求された操作には、現在のレコードが必要です。」
となってしまいます。
MsgBox RS.RecordCount
で件数を取得したら0件なので、それでエラーになります。
条件としては、
URLフォールドでは
・www.yahoo.co.jp
・www.google.co.jp
のどちらかの文字列を含み、なおかつ
終了フィールドにチェックがついてない(値は0)
です。
ご教授よろしくお願いします。
No.3ベストアンサー
- 回答日時:
フィルターに文字列として渡さなくてはいけないので
RS.Filter = ("URL = 'www.yahoo.co.jp' And 終了 = " & False) Or ("URL = 'www.google.co.jp' And 終了 = " & False)
↓
RS.Filter = "(URL = 'www.yahoo.co.jp' And 終了 = " & False & ") Or (URL = 'www.google.co.jp' And 終了 = " & False & ")"
じゃないですか?未検証です。
RS.Filter = "(URL = 'www.yahoo.co.jp' And 終了 = " & False & ") Or (URL = 'www.google.co.jp' And 終了 = " & False & ")"
で出来ました!!!ありがとうございました。
No.2
- 回答日時:
Officeのバージョンはいくつでしょう。
2010ではAccessでもExcelでもVBEの画面でヘルプ(F1キー)で
論理演算子で調べると、『演算子の優先順位』の説明が有ります。
算術演算子(+-*/)の
1+2*3 ≠ 9 、1+2*3 = 7 と同様に
論理演算子ではAnd が先に評価されその後で Or を評価します。
なので
・www.yahoo.co.jp
・www.google.co.jp
のどちらかの文字列を含み、なおかつ
終了フィールドにチェックがついてない(値は0)
はイメージ的には(手抜き回答ですが)
yahoo OR google AND false では、
google AND false の評価を行い、
『それから得たもの』 OR yahoo の評価に進みます。
ですので、
(yahoo AND false) OR (google AND false) のように組み立てる必要が有ります。
ご回答ありがとうございます。
説明不足ですいません。バージョンは2007です。
演算子の優先順位をよく見て考えるべきでしたね。
ちなみに
RS.Filter = ("URL = 'www.yahoo.co.jp' And 終了 = " & False) Or ("URL = 'www.google.co.jp' And 終了 = " & False)
にしてみたのですが
「型が一致しません。(Error 13)」になってしまいます。
何が間違ってるのでしょうか?
再度ご回答頂ければ幸いです。よろしくお願いします。
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
「平成」を感じるもの
「昭和レトロ」に続いて「平成レトロ」なる言葉が流行しています。 皆さんはどのようなモノ・コトに「平成」を感じますか?
-
「覚え間違い」を教えてください!
私はかなり長いこと「大団円」ということばを、たくさんの団員が祝ってくれるイメージで「大円団」だと間違えて覚えていました。
-
牛、豚、鶏、どれか一つ食べられなくなるとしたら?
牛肉、豚肉、鶏肉のうち、どれか一種類をこの先一生食べられなくなるとしたらどれを我慢しますか?
-
好きな和訳タイトルを教えてください
洋書・洋画の素敵な和訳タイトルをたくさん知りたいです!【例】 『Wuthering Heights』→『嵐が丘』
-
ADOでアクセスのレコードに複数のフィルタをかけるには?
Access(アクセス)
-
ado フィルタで 含まない とするには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パワポで曲がった両矢印の簡単...
-
パワーポイント「スライドショ...
-
パワーポイントの表
-
音声マークを一括非表示にしたい。
-
エクセル・パワーポイントなど...
-
PowerPointのスライドの途中で...
-
PowerPointで、作成されたファ...
-
ExcelのグラフをPowerPointに貼...
-
PowerPointでスライドマスタの...
-
PowerPointのアニメーションで...
-
パワーポイントのアニメーショ...
-
【パワーポイントのフォントが...
-
パワーポイントのグラフに、4色...
-
PowerPointVBAでスライドマスタ...
-
パワーポイントをプロンプター...
-
パワーポイント2019 図の透...
-
PowerPointのオプションの設定...
-
パワーポイントに貼り付けた素...
-
マイクロソフト ログアウトして...
-
パワーポイントで図形を回転し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Google Colaboratoryでマウント...
-
【google One】グーグルワンの...
-
Google Chrome 背景色?を変えた...
-
VBA ADO 複数条件のフィルタ
-
URLを記す場合の末尾スラッ...
-
検索エンジンに載ってしまった...
-
素朴な疑問なんですが、、検索...
-
Q-mailの退会&解除
-
テレホンカードにつきまして ...
-
googleplayのブックスからアダ...
-
HPの閲覧数を増やす
-
webページの日付を確認するには?
-
google Chrome が使えない
-
大量に作るとどうして美味しい...
-
キーワードを登録して更新を教...
-
WordPressでトップページにメタ...
-
Google Chrome
-
あるメルアドが怪しいメルアド...
-
ツールーバーの履歴の削除の仕...
-
お茶のCMみたいな 温、冷蔵庫。
おすすめ情報