みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になります。
10桁の管理番号+5桁の通し番号で書類を管理しており、
10桁の管理番号と5桁の通し番号にそれぞれフィールドがあります。
5桁の通し番号のフィールドに、
「10」と入力したとき、「00100」
「20」と入力したとき、「00200」
「100」と入力したとき、「01000」
「110」と入力したとき、「01100」
「200」と入力したとき、「02000」
※「1000」以降は考えません
と自動で値が書き換わるようにしたいのですが、
どの様な計算式を入れればよいのか分かりません。
SerialIncrement("00000" ; num)
などとやってみましたが、全然ダメでした。
平たく言えば、
2桁で入力した数値の頭に”00”を付与、末尾に”0”を付与という感じの変換をしたいです。
3桁で入力した場合は、頭に”00”を付与するのみ。
4桁入力はありませんので設定不要です。
という設定をしたいのです。
何卒ご教示のほど、よろしくお願いいたします。
Offline
フィールド設定で、計算値での「入力自動化」+「常時書換え」のオプション設定をします。
その式は、
Case(
Length(Self)=2; "00" & Self & "0";
Length(Self)=3; "00" & Self
)
Last edited by Hiro (2018-03-27 02:34:50)
Offline
> 「100」と入力したとき、「01000」
と
> 3桁で入力した場合は、頭に”00”を付与するのみ。
これとは矛盾していますが、どちらが正しいのでしょうか?
Hiroさんのは後者ですね。
前者なら、
Right ( "00" & Self & "0" ; 5 )
でいいでしょう。
Offline
チポ様、Hiro様
有難うございます。
正しくは、3ケタの場合は頭に”0”、末尾に”0”を添付、でした。申し訳ございません。
ご教示いただいた通り、計算値を入れてみましたが、
「このフィールドは変更禁止なので、この操作は実行できません」と出てきてしまいます。
Pro13を使用しています。
新規入力を受け付けない設定になってしまっているようですが、どう対応すればよろしいでしょうか。
初心者の質問で申し訳ございません。
Offline
フィールドは、計算フィールドではなく、テキストフィールドです。
テキストフィールドのフィールド設定で、計算値での「入力自動化」+「常時書換え」
のオプション設定を行ってください。
修正式は、(なお、2桁と3桁以外は、空欄を返す式)
Case(Filter(Length(Self);"23")<>""; Right("00" & Self & "0";5))
Offline
Hiro様
お世話になっております。
ご教示いただいた内容で、問題なくできました。
感謝申し上げます。勉強させていただきます。
Offline
Pages: 1
[ Generated in 0.010 seconds, 9 queries executed - Memory usage: 509.15 KiB (Peak: 515.87 KiB) ]