フォーラムに投稿 by Ozaki
「クイック検索」は、表示しているレイアウト上の複数のフィールドを対象に検索を行う機能で、FileMaker Pro 11から追加されました。
例えば、名刺を元に作った住所録で「クイック検索」を使って「中野」と入力すると、住所が中野区の人、姓が中野の人などが検索されます。
FileMaker Pro 10以前でも、スクリプトを駆使すれば複数フィールドの検索は出来ましたが、この「クイック検索」で、検索も作成も「クイック」になりました。
ですが、「ステータスツールバー」を常に非表示で使う私は、「ステータスツールバー」にある「クイック検索ツール」を使う事ができません。その為に、私はスクリプトの「クイック検索の実行」を使った「疑似クイック検索」をよく使っています。
この方法は、標準の「クイック検索ツール」では出来ない「該当するフィールドを目立たせる」機能追加が可能で、とても気に入っています。
「疑似クイック検索」作成の手順はこうです。
1 「フィールド定義」で検索用フィールドを作ります。
フィールド名は「QuickF」とします。フィールドタイプは「テキスト」にし、オプションで「グローバル格納」を設定します。
2 スクリプト「QuickF検索実行」を作成します。
「クイック検索の実行」スクリプトステップだけを使った一行のスクリプトです。「クイック検索の実行」スクリプトステップの「オプション」では「QuickF」フィールドを指定します。
3 レイアウトモードに切り替え、「QuickF」フィールドにスクリプトトリガを設定します。
「QuickF」フィールドを選択して、「書式」メニューから「スクリプトトリガ設定」を選択します。トリガの種類は「OnObjectExit」、指定するスクリプトは「QuickF検索実行」です。
4 ブラウズモードに切り替え、「QuickF」に検索したい文字を入力して、Enterキーを押します(またはフィールド以外の部分をクリックします)。
すると、「クイック検索ツール」に入力するのと同じ様に複数フィールドの検索が行われます。手順 2 で「クイック検索の実行」にせず、旧来の検索方法にすれば、ver10でも使用できます。
ひき続き、最初に書きました、該当文字列が含まれているフィールドが目立つと、わかりやすいですよね。「該当フィールドを目立たせる方法」も合わせて紹介します。
これは、「条件付き書式」を使った方法です。「条件付き書式」の条件式は、「ステータスバー」の右上にある「クイック検索ツール」の内容を扱う事が出来ません。よって、この方法は「疑似クイック検索」ならではの手法になります。
「条件付き書式」の設定方法と条件式です。
1 レイアウトモードに切り換えます。
レイアウトモードにすると、ブラウズモードの時には表示されない緑や黄色の虫眼鏡マークが表示されます。これが、「クイック検索」を行った際に検索されるフィールドです。
2 この虫眼鏡マークのあるフィールドを、キーボードの Shift キーを押しながら全てクリックし(複数フィールド選択になります)、条件付き書式を設定します。(選択したフィールドの上で右クリックするか、「書式」メニューから「条件付き」を選択します。)
3 「条件付き書式」の条件を設定します。
「追加」ボタンをクリックします。「条件」は「値が」から「計算式が」を選択して、計算式を指定します。
計算式は、次のような式を使います。「フィールド名」の部分は「条件付き書式」を設定するフィールド名となりますが、複数のフィールドを一度に選択していますので、どうやって指定するか? という問題がでてきます。
PatternCount ( フィールド名 ; ( QuickF ) ) > 0
そこで、「フィールド名」に「Self」という関数を使います。こうしますと、検索対象のフィールド全部選択して、一度に「条件付き書式」を設定出来るのでとても楽です。
指定する式は、次の式となります。
PatternCount ( Self ; ( QuickF ) ) > 0
4 「条件付き書式」の書式を設定します。
書式(目立たせる方法)は色々ですが、私はフォント色を赤にして、太字にしています。お好みで選んでみてください。「OK」をクリックして終了です。
5 ブラウズモードに切り替えると、「QuickF」に入力した文字列が含まれているフィールドが、指定した書式に変わっています。
他、条件付き書式はとても便利ですので、ぜひ使ってみて下さい。