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

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

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

You are not logged in.

Announcement

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


#1 2024-01-18 15:27:55

sss
Guest

if関数

使用環境 FM18 win11

いつもお世話になっています。
凄く簡単な基本的な事かもしれません。教えてください。

if関数を作成する際の条件ですが例えば、
品物というフィールドがあり
If(品物= ”りんご” or”みかん” ;”果物”)
と作ってもうまく表示されませんが
If(品物=”りんご” or 品物="みかん” ;”果物”)
とするとうまく表示できます。

最初の計算式のようにまとめて計算式する事は不可能でしょうか?
2個目の計算式の様にその都度、品物=で条件式を一つづつ作成しなくてはダメでしょうか?

#2 2024-01-18 16:34:02

himadanee
Guest

Re: if関数

orを使うには両側が論理値にならないとだめなので、そうなりますね。

2個だとほとんどメリットがありませんが、複数から一致を調べるのは
FilterValues ( 品物 ;  ”りんご¶みかん” ) <> ""
のように書けば「品物」が1回で済みます。

#3 2024-01-18 16:36:53

Shin
Member

Re: if関数

=という演算子は、右と左の項目が同じ という比較を行うものです。
orは、右と左の項目のどちらかが真(1)ならば 1 を返します。逆に言うと、どちらの偽(0)の時に 0 を返します。
その組み合わせで、品物= ”りんご” or”みかん” は、演算の優先は前からですので、( 品物= ”りんご” ) or”みかん” と同じになります。
まとめた条件式にするなら、
PatternCount ( ”¶りんご¶みかん¶” ; ¶ & 品物 & ¶ )
ValueCount ( FilterValues ( 品物 ; ”りんご¶みかん” ) )
あたりでしょうか。または、
Case (
   品物= ”りんご” ; ”果物” ;
   品物= ”みかん” ; ”果物”
)
でもいいです。

Last edited by Shin (2024-01-18 22:59:06)

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.006 seconds, 11 queries executed - Memory usage: 502.84 KiB (Peak: 507.38 KiB) ]