今日のテーマは「FileMaker」です。
先日、FileMakerで作成したデータの集計の依頼を受けたときに、困ったことが起きて工夫して解決した内容の備忘録です。
【困った内容】
例えば、見積日付が「2019年2月18日」だったとします。
この見積書を月単位で集計するのに、上の見積金額を「2019年2月」というようにすれば、2月の全部をまとめて集計することができます。
見積日付から「年」と「月」だけを抜き出すだけならば、下記のように悩まない内容です。
Year ( 見積書日付 ) & “年” & Month ( 見積書日付 )& “月”
しかし、これだと困った問題がおきます。
2018年1月
2018年2月
2018年3月
・・・・・・・
2018年10月
2018年11月
2018年12月
これを並び替えると、
2018年10月
2018年11月
2018年12月
2018年1月
2018年2月
2018年3月
・・・・・・・
2018年9月
こうなってしまいませんか?
そこで、並び替えたときに1月から12月まで順番に並ぶようにするために、1月~9月は01月~09月というように「ゼロ」をつけたいんです。
では、どうするか、というのが今回の備忘録の内容です。
結論としては、下記のように解決しました。
Year(見積書日付)&”年”&Right(“0″&Month(見積書日付);2) & “月”
ポイントは、「Right(“0″&Month(見積書日付);2) 」です。
Right(テキスト;文字数)は、テキストから文字数抜き出す、という関数です。
これを当てはめると
- “0”←数字のゼロと
- Month(見積書日付)←抜き出した月の数字を
- &←結合させて
- ;2←右から2文字抜き出す
1月→1→01→01月
2月→2→02→02月
3月→3→03→03月
・・・・・・・
10月→010→10月 ←ここがミソですね!
11月→011→11月 ←ここがミソですね!
12月→012→12月 ←ここがミソですね!
これで、並び替えると、
2018年01月
2018年02月
2018年03月
・・・・・・・
2018年10月
2018年11月
2018年12月
これで、めでたし、めでたし、です。