大人になっても苦手な食べ物、ありますか?

ACCESSのVBAに関する質問です。

「main」フォームで書籍の一覧表を表示させています。
レコードにある「書名」をダブルクリックすると
「input」(編集用)サブフォームに
その書籍の詳細が表示されるようにしたいです。

色々調べてみて

DoCmd.OpenForm "input", , , "ID=" & Me.ID

上記のように表記して作動させてみたのですが
「input」フォームのプロパティにフィルタがかかってしまいます。
(どうしてこのようになってしまうのかが分からないので
 説明が曖昧ですみません。。。)

Dim strData As String
 strData = Me!ID

こんな感じでやるのではないかなー、
と漠然と考えているのですが
この先どうやっていいのかがわかりません。

教えてください!

A 回答 (1件)

OpenForm マクロ アクション


http://office.microsoft.com/ja-jp/access/HA01226 …

を見れば、判るように・・・
第4引数は、「Where Condition/Where 条件式」です
これは、レコードソースのWhere条件を書き換えるのではなく、フォームのフィルタプロパティに書き込むオプションです

ですので・・・

> 「input」フォームのプロパティにフィルタがかかってしまいます。
> (どうしてこのようになってしまうのかが分からないので
>  説明が曖昧ですみません。。。)

は、自分で指定しているから、フィルタが掛かると言うこと・・・
従来の話で言えば、そう言う処理で正解だと思いますよ
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
書いていたVBAが自分のやりたいこととは
違っていたんですね。
色々調べて試してみたところ正解以下でした。
DoCmd.OpenForm "input"
[Forms]![input]![ID].SetFocus
DoCmd.FindRecord [Forms]![main]![ID]
ご協力ありがとうございました!

お礼日時:2009/04/03 13:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A