Accessの初心者です。
本などをみながらあいまい検索ができるようなフォームをつくってみましたがフォームを開いた時、全レコードが表示されてしまいます。
クエリーの抽出条件はLike "*" & Forms!フォーム1!テキスト0 & "*"にしてテキストボックスプロパティの更新後処理でDoCmd.Requeryとしました。(意味がよくわからないんですけど)
フォームを開いた時やテキストボックスになにも入力されていない時、全レコードが表示されないようにするにはどうすればいいのでしょうか?
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

すいません、ちょっと勘違いをしてました。


「全レコードが表示されないようにする」でしたね。

ちょっと調べてみましたが、Requeryよりもフィルタを利用する方が良いようです。

更新後処理を

Dim jyouken As String

If IsNull(Me.ActiveControl) Then
  jyouken = "[フィールド名] Is Null"
Else
  jyouken = "[フィールド名] Like '*" & Me.ActiveControl & "*'"
End If
Me.Filter = jyouken
Me.FilterOn = True

とします。
前提条件としては、あいまい検索するフィールドは必ず入力されていると言うことです。
([フィールド名]の部分はご自分の環境に合わせてください。)
    • good
    • 0
この回答へのお礼

お手数おかけします。
あいまい検索は完璧にできました。
フォームに全件表示されてしまう件ですが、途中途中はできるようになったのですが、新たにフォームを開いた時は全件表示になってしまいます。
もう1度やり直してみます。
何度もすいません、勉強になります。

お礼日時:2002/03/05 21:59

IFを使って条件分岐じゃいけませんか?


たとえば

IF IsNull(Forms!フォーム1!テキスト0) then
Exit Sub
End IF
DoCmd.Requery

という感じで・・・
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
テキストボックスの更新後処理のところに入力してみました。(あってます?)
あいまい検索はできるんですがフォームを開いた時、全レコード表示されてしまいました。
入力ミスがあったかもしれないので明日また挑戦してみます。
どうもありがとうございました。

お礼日時:2002/03/04 21:01

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qniceの反対語

goodの反対語はbadですよね。
それでは、niceの反対語は何でしょうか?

Aベストアンサー

状況によって
・bad
・unpleasant
・nasty
・horrible

などが当てはまりますね。

QAccessで、コード実行中に、フォームのテキストボックスの値をデータソースとしたクエリーフィールドの値を取得したい

Accessにおいて、frmMENUというフォームを作成し、txtYearというテキストボックスを配置しました。"式1: [Forms]![frmMENU]![txtYear]"というフィールドを含むクエリーを作成しました。
フォームを起動し、txtYearに値を入れた後、そのクエリーを開くと、"式1"には正しく値が入っているのですが、コードの実行中(例えばボタンクリック処理の間など)にクエリを開くと何も入っていません。このとき、クエリーに対するSQL(select 式1 from クエリ1)を実行しようとすると「パラメータが少なすぎます。1を指定してください。」というエラーが発生してしまいます。コード実行中にクエリーから"式1"の値を取得することはできないのでしょうか?

Aベストアンサー

補足に対してアドバイスします。

>テキストボックスの値を一旦テーブルに書き込む処理を入れ、そのテーブルを参照するクエリーを作成して対処しようかと思い始めています。

テーブルに書きこまなくてもクエリの定義を直接変更することが出来ます。
CurrentDb.QueryDefs("クエリ名称").SQL プロパティーに直接SQLを設定してみてください。

Q恐怖の反対語って何ですか?

恐怖の反対語って何ですかね?反対語データベースにものってなかったので気になりました。快感ってのは聞いたことあるんですけどなんか違うような。。。。っていうか反対語はないのでしょうか?

Aベストアンサー

『A Dictionary Of Synonyms And Antonyms』(類語反語辞典)という本(英語)で、恐怖(fear)の反対語を調べてみましたが、十数種類の単語が並んでいました。
その中で、最もストレートな反対語は、fearlessness(恐れないこと。大胆)です。
文学的な表現なので、どの語が正しいというようなものはないのかもしれませんけどね。

参考URL:http://dictionary.goo.ne.jp/search.php?MT=fearless&search_history=%B6%B2%C9%DD&kind=je&kwassist=0&mode=0&ej.x=15&ej.y=10

Qエクセルでテキストファイルからフォームのテキストボックスにテキスト挿入するマクロ

マクロでフォームのテキストボックスに直接テキストファイルからテキストを挿入したいのですが出来ますか?
opentextでエクセルシートに入れてからフォームにコピーすることはできたのですが、それだと重くなってしまうので直接取り込みたいんですがうまくいきません。
VBやJAVAのreadlineのようなものは使えないんでしょうか。

Aベストアンサー

>VBやJAVAのreadlineのようなものは使えないんでしょうか。

LineInput がありますよ。
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_030.html
http://rd.search.goo.ne.jp/click?DEST=http%3A%2F%2Fofficetanaka.net%2Fexcel%2Fvba%2Fstatement%2FLineInput.htm&no=2

Q反対語を教えてください

1. 「すでに」の反対語は?


2. 「整然」の反対語は?


教えてください

Aベストアンサー

>1番のすでにの反対語ですが、「いずれ」「さきに」の二択の場合は
>どちらでしょうか・・・・・?

時間軸で考えると分かり易いと思います。
”すでに”は、始まっているということなので今よりも前のことです。

”いずれ”はこれから始まるであろうことで今より先のことです。(起こる起こらないは別の話ですが)
”先に”は今の時点からすると先に始まっていることなので、正解は”いずれ”になります。

 今回はソシーラス使ってませんよ、エライエライ(自分で自分を誉めてます)

QAccess フォームのテキストボックスに入力した年月でテーブルのフィールド名を検索し、レコードを表

Access フォームのテキストボックスに入力した年月でテーブルのフィールド名を検索し、レコードを表示させることはできるのでしょうか?
方法があればご教授ください。
よろしくお願いします(❁ᴗ͈ˬᴗ͈)

Aベストアンサー

>Dim myDB As Databaseでコンパイルエラーで『ユーザ定義型は定義されていません。』のエラーが出るのですがどうしたら良いでしょうか…?

Dim myDB As Database → Dim myDB As DAO.Database
Dim myTB As TableDef → Dim myTB As DAO.TableDef
このように DAO. を付けてみたらどうですか?

それでもエラーが出るようでしたら、Accessのバージョンと、VBAエディタ のツールにある「参照設定」で
チェックの入っている項目を教えてください。

Access2000か2002でしたら、参照設定で Microsoft DAO 3.6 Object Library にチェックが入っていないのかも。。。。

Q中止の反対語は再開ではないようですが…

中止の反対語は継続や続行のようです。
では、再開の反対語はなにになるのでしょうか?

Aベストアンサー

>再開の反対語は?

再開の反対語は存在しない。あえて、候補を挙げれば<休止>。

QAccess2000でフォームを開くときに常に新規レコードで開きたいのですが

Access2000で、あるイベントに参加した人のデータベースを作りました。

検索用フォームで「氏名」と「生年月日」で検索し、その人の情報を別の
フォームで見ることができるようになっています。

該当者がいない場合は、新しいレコードにそのデータを追加します。

検索結果を表示するフォームに個人情報を表示・書き込みできる画面を開く
ためのボタンがあるのですが、このボタンをクリックした時に、常に新規
レコードで開きたいのですが、コードはどのように記述すればよろしいの
でしょうか?

ちなみに、いまは下記のようなコードになっています。

「新規登録ボタン」は個人情報を表示・書き込みできる画面を開くためのボタン
「応募者」は個人情報を表示・書き込みできるフォーム
です。

Private Sub 新規登録ボタン_Click()
On Error GoTo Err_新規登録ボタン_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "応募者"
DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_新規登録ボタン_Click:
Exit Sub

Err_新規登録ボタン_Click:
MsgBox Err.Description
Resume Exit_新規登録ボタン_Click

End Sub

Access2000で、あるイベントに参加した人のデータベースを作りました。

検索用フォームで「氏名」と「生年月日」で検索し、その人の情報を別の
フォームで見ることができるようになっています。

該当者がいない場合は、新しいレコードにそのデータを追加します。

検索結果を表示するフォームに個人情報を表示・書き込みできる画面を開く
ためのボタンがあるのですが、このボタンをクリックした時に、常に新規
レコードで開きたいのですが、コードはどのように記述すればよろしいの
でしょうか?

...続きを読む

Aベストアンサー

DoCmd.OpenForm stDocName, , , stLinkCriteria

DoCmd.OpenForm stDocName, , , stLinkCriteria, acFormAdd

で解決しませんか。

Qtrapの反対語ってなんですか?

trap(罠をかける)の反対語ってなんですか?

また、英語の反対語が載っているURLなどが
ありましたら、教えてください!

Aベストアンサー

(↓)ではtrapの反意語はみつかりませんでしたが。
ほかにも、音がにている単語、類義語なども調べられます。

参考URL:http://www.rhymezone.com/r/rhyme.cgi?

QACCESSのフォーム内のレコードへのサブフォーム内のレコードの表示

いつも色々な方々に大変お世話になっております。
今回は見積書というフォームの中に、得意先一覧というサブフォームがあり、その得意先一覧にはもちろん得意先の名前があります。
現時点では、見積書フォーム内の得意先名レコードにコンボボックスを設置して選べるようにしてあります。
これを得意先一覧サブフォームの中から、見積書フォーム内の得意先レコードに表示させたい、得意先名をダブルクリックすると転記されるようするのは可能でしょうか?
宜しくお願いします。

Aベストアンサー

> 得意先名をダブルクリックすると転記されるようするのは可能でしょうか?
サブフォームの得意先名をということですよね?

Me.Parent!得意先レコード = Me!得意先名
のように、サブフォームのイベントに記述すれば、親フォームのコントロールを指定できます。


人気Q&Aランキング

おすすめ情報