Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
お世話になります。
いつも皆様の知見を拝見し、驚きと共に自分ももっと頑張らねばと思っています。
今回お聞きしたいのはあるグラフがあり複数の数式がセットされています。多くの数式があり
見難いのでリストボックスで選択されている項目だけをグラフに表示させようと思っています。
そこで数式の条件付き表示にMatch('h1',Concat(F1,','))>0と記載したのですがうまく判断されず
返値はいつも0のままです。
添付したファイルのテキストボックスにはいろいろ思考錯誤した後が残っていますが
私の知識ではここまでかなと思いご相談させていただくことにしまいした。
理想はF1で複数選択した時、F2で選択した内容がF1の選択内容に含まれているかどうかの判断を
させることです。
(真ん中のテキストボックスの3段目に数値が返るようにしたいです)
お知恵を貸してください、よろしくお願いします。
下記数式でできます。
concat({<F1={$(=chr(39)&concat(distinct F2,chr(39)&','&chr(39))&chr(39))}>}distinct F1)
F2の選択が一つだけで、有無を'1' or '0' で表示するということであれば、下記の式で計算できます。
SubStringCount(chr(44)&concat(distinct F1,chr(44))&chr(44),chr(44)&GetFieldSelections(F2)&chr(44))
F2の選択が複数の場合は、返信で記載下さい。
目的がリストボックスで選択した計算式だけ有効にしたいということでしたら、添付ファイルのようにした方が良いかもしれません。
数式タブの条件付表示に組み込んでいる計算式のh1、h2........部分だけ変更するだけです。
添付ファイルは、F1のリストボックスで選択して初めて有効になるようにしていますが、選択が無い場合は全て表示するのであれば、GetFieldSelectionsをConcat関数に変更して下さい。
数値を出すのでしたね。。。
count(if(match(F2,F1),F1))
でいけないですか。
KAWAHATA様、若松様
お世話になります、お二方の回答はよく拝見させていただき勉強させていただいています。
今回はお二人の回答で同じ結果を求めることができました、ありがとうございました。
KAWAHATAさんもう少し教えてください、KAWAHATAさんご回答の数式でmatch(F2,F1)は
その返値として何が返るのでしょうか、サンプルを見てお分かりのように、当初Match('h1',Concat(F1,','))で
その文字がある場所を探り、0でなかったら現在選択中として処理しようとしてましができませんでした。
これで何故できないのかも知りたいのですが、それよりmatch(F2,F1)が条件分岐としてどうして成立するのか
が知りたいです。
解決後に失礼ですがもう少しお付き合いください。
よろしくお願いします。
Match('h1',Concat(F1,','))ではConcat(F1,',')が1つ文字列の塊(例:「h1,h2」の文字列)になっているので
h1と一致してないので0になります。
match(F2,F1)は1文字対1文字で比較しているのでmatchしているものは1になります。
ストレートテーブルでF1,F2を軸にして、それぞれの数式を加えて比較にしてみてください。
「h1」 を 「h1,h2」 のかたまりから検索すると、h15,h16などの塊でもひっかかってしまうので、両方とも値の前後にカンマをつけて「,h1,」を「,h1,h2,」の塊から検索するようにしたほうがいいですよ。
KAWAHATA様、若松様
返信が遅くなり申し訳ありません、昨日は所用で休暇をいただいておりました。
いろいろご助言ありがとうございました、また一つ自分の中に情報が増え今後の活動に活かせそうです。
また何かありましたらお助けください。
それでは失礼します。