初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2020-09-24 16:35:54

nice-guy
Member

改行区切りテキストのデータを絶えずソートした形で入力したい

皆さんこんにちは。
Win版V19を使っています。

テキストフィールドが有り、その値一覧に1,2,3とチェックボックスが設定されています。
この時に1→3→2とチェックボックスをクリックすると
1
3
2
とテキストフィールドに入力されますよね。
この時に、値の入力順を問わず絶えずソートされた状態
1
2
3
としたいのですが。
スクリプトトリガーでソートすれば良いのではと思うのですが、どのようにしたら良いか教えてください。
よろしくお願いします

Offline

#2 2020-09-24 16:56:05

nice-guy
Member

Re: 改行区切りテキストのデータを絶えずソートした形で入力したい

自己解決です。フィールドのオプション 入力値の自動化の計算値 SortValues ( Self ;2) と入れて フィールドに既存の値が存在する場合は置き換えないのチェックを外すとうまく並べ替えられました。
どうもありがとうございました。

Offline

#3 2020-09-24 17:03:57

Shin
Member

Re: 改行区切りテキストのデータを絶えずソートした形で入力したい

それでもいいのですが、ソート順が限定されます。
FilterValues ( ValueListItems ( Get ( ファイル名 ) ; "値一覧" ) ; self )
とされると、値一覧の順に並ぶようになります。

Last edited by Shin (2020-09-24 17:33:33)

Offline

#4 2020-09-24 17:30:10

Hiro
Member

Re: 改行区切りテキストのデータを絶えずソートした形で入力したい

自己解決したようですが、
仮に、ソート順が、当初説明の「値一覧」順(※数値順ではなく)であるなら、
フィールド設定の「入力値自動化、常時書換え」オプションで下式の計算値を定義します。

【 ※2例式中 Replace()、Substitute() 処理は強制付加された「末尾空行の除去」措置2法 】

  • Let(
       #lst=FilterValues(ValueListItems(Get(ファイル名);"その値一覧名"); Self)
      ; Replace(#lst; Length(#lst); 1; "")
    )

  • Let(
       #lst=FilterValues(ValueListItems(Get(ファイル名);"その値一覧名"); Self)
       ; Substitute(#lst & Char(1); [Char(100013);Char(0)];[Char(1);Char(0)])
    )

Last edited by Hiro (2020-09-25 15:43:53)

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 505.16 KiB (Peak: 516.02 KiB) ]