12 返信 最新の回答 日時: Sep 10, 2014 2:19 AM ユーザー:mrnbk

    検索でヒットした部分のハイライト

    mrnbk

      タイトル

      検索でヒットした部分のハイライト

      フォーラムに投稿

      検索について質問させてください。

      検索でヒットした部分を目立たせるようにするにはどうすればよいでしょうか。 例えば、マーカーをひいたようにしたいと思うのですが、その方法が分かりません。 よろしくお願いいたします。

        • 1. Re: 検索でヒットした部分のハイライト
          sago350@未来Switch

          こんな感じが近いですかね?

          サンプルファイル

          検索モードで検索した結果のレコードに対して、さらにどのフィールドのどこにヒットしたのかをサンプルのようにマーカー引いて目立たせたい感じですかね?

          • 2. Re: 検索でヒットした部分のハイライト
            mrnbk

            sago35 さん ありがとうございます。

            まさにそのような感じにしたいのです。使っているのはFile Maker pro 12 です。

            そのようにするためにはどうすればよいか教えていただけますでしょうか。よろしくお願いいたします。

            • 3. Re: 検索でヒットした部分のハイライト
              sago350@未来Switch

              サンプルファイルはご覧いただけたでしょうか?

              どの辺でつまづいていますか?

              • 4. Re: 検索でヒットした部分のハイライト
                mrnbk

                サンプルファイルを拝見しました。まさにそのようにしたいのですが、そこにいたるまでの手順がよく分かりません。強調表示に関係があるのでしょうか。

                • 5. Re: 検索でヒットした部分のハイライト
                  sago350@未来Switch

                  計算フィールドを用意してですね、下記計算式を設定してます。

                  Substitute ( テキスト ; 検索ワード ; TextStyleAdd ( 検索ワード ; 強調表示 ))

                  で、ここで使われている関数は2つ。SubstituteとTextStyleAdd。
                  Substituteは「テキスト」フィールドの内容を「検索ワード」フィールドで置換します。
                  置換する内容はTextStyleAdd ( 検索ワード ; 強調表示 )の部分。

                  で、TextStyleAddは何をしているかというと、
                  「検索ワード」を強調表示(マーカー引いたみたいな表現)にしてます。

                  つまり、「テキスト」フィールドの中にある「検索ワード」の値マーカーを引いた「検索ワード」の値に置換しているのです。

                  • 6. Re: 検索でヒットした部分のハイライト
                    mrnbk

                    sago 35 さん ありがとうございます。

                    計算フィールドを作りました。 それで Substitute と TextStyleAdd という関数も ”計算式の指定” のところで見つけたのですが、その設定の仕方でつまづいています。

                    Substitute (テキスト ; 検索テキスト ; 置換テキスト)

                    これのそれぞれの引数にどのフィールドを入れれば良いのかよく分かりません。 また、

                    TextStyleAdd (テキスト ; スタイル) の場合も同様で、この二つの関数を一緒に設定するときに演算子というものが必要なんでしょうか?

                    分からないことばかりでお手数をおかけしますが、教えていただけますでしょうか。よろしくお願いします。 

                     

                    • 7. Re: 検索でヒットした部分のハイライト
                      mrnbk

                      sago 35 さん

                      以下の式を設定しました。

                      Substitute ( 名前 ; 検索ワード ; TextStyleAdd ( 検索ワード ; 強調表示 ) )

                      これで、サンプルファイルのようにハイライト(強調表示)された結果が得られました。ありがとうございます。

                      もう一つ質問させてください。上の式で “名前” にあたるフィールドの数を増やすことは可能でしょうか?それとも新たに計算フィールドを作る必要があるのでしょうか。お手数ですがよろしくお願いいたします。

                       

                       

                      • 8. Re: 検索でヒットした部分のハイライト
                        sago350@未来Switch

                        ハイライトさせたいフィールド分必要ですね。

                        • 9. Re: 検索でヒットした部分のハイライト
                          sago350@未来Switch

                          「フィールドが複数あって、それぞれにハイライトさせたい」
                          ということがしたいと判断して、フィールドの数分の計算フィールドが必要と書きましたが、意図は合ってたでしょうか?

                          上の式に名前以外のフィールドを指定することは可能ですが、全部一つにまとまってもいいんですかね。
                          最終的にどうしたいのか教えていただけると回答もし易いです。

                          • 10. Re: 検索でヒットした部分のハイライト
                            mrnbk

                            sago 35 さん

                            言葉足らずで申し訳ありません。“名前”以外にも複数フィールドがあります。

                            上の式は、

                            ハイライトさせたい1つのフィールド、1つの“検索ワード”フィールド、1つの計算フィールド、と思います。可能でしたら

                            ハイライトさせたい複数のフィールド、1つの“検索ワード”フィールド、1つの計算フィールド、にできたらと思っていました。

                            そのようなことは可能でしょうか。自分でも良く分かっていないまま質問していますので、おかしな質問かもしれませんが、よろしくお願いいたします。

                             

                             

                             

                            • 11. Re: 検索でヒットした部分のハイライト
                              sago350@未来Switch

                              可能か可能でないかで言うと、繰り返しフィールドを使えば出来るかもしれません。
                              ただ、別々にフィールドを作った方が無難ですね。

                              検索結果をハイライトさせる方法は他にもあると思いますが、どの方法もそれなりに技術力が必要となると思います。

                              • 12. Re: 検索でヒットした部分のハイライト
                                mrnbk

                                sago 35 さん

                                どうもありがとうございました。 おかげさまで File Maker が使いやすくなりました。

                                それぞれにフィールドを作ろうと思います。大変参考になりました。m(_ _)m