フィールド内の特定文字を強調表示してみる。

   2015/08/04

1つのフィールドに大量の文章が入力されていると、その中から特定の単語を見つけるのは大変です。

外部のテキストエディタにコピペして、文章内のどこに特定の単語があるか?確認してもいいのですが

ファイルメーカーで出来るか実験してみました。

 

まずテスト用のテーブルを作成します。

文章を入力するフィールドと、検索キーになるフィールドの2つだけです。

 

 

レイアウトを適当に作成します。

 

 

スクリプトを作成します。

処理内容は、こんな感じです。

Substitute (TextStyleRemove ( TextSizeRemove ( TextColorRemove ( test::文章);40);太字) ; test::検索キー ; TextStyleAdd(TextSize (TextColor( test::検索キー ; RGB (255 ;0 ; 0));40 );太字) )

 

外側から説明すると、まずSubstitute関数で、文章内の検索キーを検索キーで置換しています。

これだけを見ると無駄な処理ですが、これが基本ベースになります。

Substitute (test::文章; test::検索キー ;test::検索キー)

 

次にせっかく置き換えるなら、もっと強調文字にしたい!ってことで

Substitute (test::文章; test::検索キー ;test::検索キー)の置換テキスト部にサイズ、スタイル、カラーを追加しています。

TextStyleAdd(TextSize (TextColor( test::検索キー ; RGB (255 ;0 ; 0));40 );太字)

 

最後にそのままだと、何回か異なる検索キーを入力して処理を繰り返していくと

強調されている文字ばかりになるので、強調スタイルを設定する前にスタイルを削除しています。

TextStyleRemove ( TextSizeRemove ( TextColorRemove ( test::文章);40);太字)

 

 

作成したスクリプトを、検索キーフィールドのスクリプトトリガーに設定します。

06

 

 

適当な文章をフィールドに設定して、検索キーに対象文字を入力。

こんな感じで表示されます。

と書いてみましたが、どこに使うのだろう・・・・^^;

  • ブログランキング・にほんブログ村へ
  • FC2ブログランキングへ
  • 人気ブログランキングへ
  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る