みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
OS:[Win7] FileMaker Ver:[14 adv]
お世話になっております。
1フィールドの中に重複データが存在します。
[AAA][AAA][BBB][PPPPPP][PPPPPP]
↓
[AAA][BBB][PPPPPP] このようにしたい。
データは実際に[]で囲ってありますが文字数はランダムです。
どのようにスクリプトを書けば削除できるかご教示いただけないでしょうか。
よろしくお願いいたします。
リレーションと値一覧を組み合わせてスクリプトで処理する方法です。
一つ問題があって、値一覧を使う関係で、結果は素データをソートしたものとなります。
説明が面倒なので、 作例を http://yahoo.jp/box/MRhK5i におきました。
Offline
計算式でDISTINCT処理する方法。
ただし、式はループ再帰計算式のため、[項目]数が大凡200項位で計算限界となります。
Let([
$lst=Substitute(フィールド; ["][";"]¶["]);
$i=0;
$fnc=
"Case($i=ValueCount($lst); Substitute($res;[\¶;\"\"]);
Let([
$i=$i+1;
$itm=GetValue($lst;$i);
$res=List($res;Case(FilterValues($res;$itm)=\"\";$itm))
]; Evaluate($fnc))
)"
];
Evaluate($fnc)
)
Offline
ちょっと時間がかかってしましましたが、
再帰計算するスクリプトとカスタム件数を使った計算式の作例を作って見ました。
前に回答したものはリレーションを使ってのスクリプトの計算でしたが、
今回は、中間フィールドなしで一気に計算しています。
また再帰のカスタム関数は、これまで論議されていない方法ではないか と思いますが。。
に作例を上げましたので、
カスタム関数については、評価をいただければと思います。
Offline
シャチ様、Hiro様の方法で無事実現することができました。
大変助かりました。ありがとうございます。
シャチ様のカスタム関数は、よく分かっていないもので
導入できておりませんが、いつか使う機会のために保存させていただきました。
この度は、誠にありがとうございました。
Pages: 1
[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 510.52 KiB (Peak: 516.56 KiB) ]