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

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

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

You are not logged in.

Announcement

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


#1 2015-01-21 11:35:22

ちき
Guest

数字フィールドを1,000単位に省略する方法

よろしくお願いします。FileMaker13です。

数字フィールドを1,000円単位で表示したいのですが、
全てのフィールドを計算フィールドに置き換えるしかないのでしょうか。

2,893,000

2,893

#2 2015-01-21 14:00:58

旅人
Member

Re: 数字フィールドを1,000単位に省略する方法

その計算式で全置換したら数字フィールドのままでいいですけど。

Offline

#3 2015-01-21 14:27:01

ちき
Guest

Re: 数字フィールドを1,000単位に省略する方法

1000単位表示が必要になるのは特定のレイアウト上だけで、元の数字は保存しておく必要があります。
レイアウトインスペクタの書式設定で小数点の桁数やマイナス表示が色々選べるのに、
1,000単位ができないのがちょっと不思議です。

ありがとうございました。

#4 2015-01-21 15:13:41

barikan
Guest

Re: 数字フィールドを1,000単位に省略する方法

1円単位の数字フィールドと1000円単位の計算フィールドの2つを用意して
レイアウトによって使い分けると良いのではないでしょうか。

#5 2015-01-21 15:52:38

ちき
Guest

Re: 数字フィールドを1,000単位に省略する方法

barikan様、ありがとうございます。

やはり別フィールドを用意する必要があるのですね。
フィールド数が多いこともあり書式設定のオプションのようなものがあればと思い、
質問させていただきました。

#6 2015-01-21 16:23:46

チポ
Member

Re: 数字フィールドを1,000単位に省略する方法

こんな方法も有る
程度に思ってください ;;


下3桁を他のオブジェクトでマスクしてみたら。
フィールドが横並びなら、右のフィールドを重ねればいいですよね。

Offline

#7 2015-01-21 16:58:45

Layouter
Guest

Re: 数字フィールドを1,000単位に省略する方法

同じく

計算値自動入力で
Left ( Self ; Length ( Self ) - 3 ) & TextColor ( TextSize ( Right ( Self ; 3 ) ; 1 ) ; RGB ( 255 ;255 ;255 ) )
(色は、背景に合わせる)
数字書式を「入力したまま」にすると下3ケタは見えなくなる。
小数とか、マイナスがある場合は調整が必要ですね。。。

#8 2015-01-21 17:33:34

ちき
Guest

Re: 数字フィールドを1,000単位に省略する方法

チポ様、Layouter様、ありがとうございます。

デバイスが色々ということもあり、レイアウト上(見た目)での調整は
メンテナンス上できれば避けたいと考えています。

ふと思ったのですが、例えば
計算フィールド[10]にそれぞれ1000単位にした数字を入れるような計算式はできるものでしょうか。
もしできるなら、フィールドを1つにできて管理しやすくなるのですが。。

#9 2015-01-21 17:51:54

Shin
Member

Re: 数字フィールドを1,000単位に省略する方法

発想の転換で、元の数字を千単位で入力してしまう、という方法はいかが。
普通に入力させておいて、自動計算で千単位へ自動変換。
レイアウト上では、小数点もコンマにしておけば普通に見えるし、千単位の表示が必要な所では小数点以下を非表示にしておけば良い。

Offline

#10 2015-01-22 11:13:39

ちき
Guest

Re: 数字フィールドを1,000単位に省略する方法

Shin様、ありがとうございます。
今作成しているレイアウトに限って横に多くのフィールドを詰め込むため、
千単位表示を検討しているのですが、
保管するデータとしては正しい金額が必要です。
千単位にする計算フィールドをフィールド数ぶん作ればよいのですが、
管理上フィールド数をできるだけ増やさないようにできないかなと考えた次第です。


その後、ふと思いつき、
千単位にする計算フィールドを繰り返しにして、レイアウト上で必要な繰り返し番号を指定するという方法を試してみました。
それなら増やすフィールドは1つで済むと思い、下記のようにしてみました。
しかし[1]のみ表示されて、[2]以降は表示されません。
この方法は実現は難しいでしょうか。


Let (
$金額 = Case (
Get ( 計算式繰り返し位置番号 ) = 1; 金額a;
Get ( 計算式繰り返し位置番号 ) = 2; 金額b;
Get ( 計算式繰り返し位置番号 ) = 3; 金額c;
Get ( 計算式繰り返し位置番号 ) = 4; 金額d;
Get ( 計算式繰り返し位置番号 ) = 5; 金額e
);

Round ( $金額; -3 ) / 1000

)

#11 2015-01-22 13:26:45

チポ
Member

Re: 数字フィールドを1,000単位に省略する方法

繰り返しへの計算に非繰り返しを使うには、
  Extend(金額a)
または
  金額a[1]
の様にしないとダメです。

こんな式でも、、
Round ( Choose ( Get ( 計算式繰り返し位置番号 ) - 1 ; 金額a[1] ; 金額b[1] ; 金額c[1] ; 金額d[1] ; 金額e[1] ) ; -3 ) / 1000
って丸めるんですか?

Last edited by チポ (2015-01-22 14:00:31)

Offline

#12 2015-01-22 14:34:01

ちき
Guest

Re: 数字フィールドを1,000単位に省略する方法

チポ様、ありがとうございます!うまくいきました。
切り捨てでも四捨五入でもどちらでもよいのですが、上ではroundにしました。
また、Chooseを教えていただき、ありがとうございました。

皆様、アドバイスありがとうございました。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 521.6 KiB (Peak: 526.14 KiB) ]