• ベストアンサー

filemakerでの日付の書式について

filemaker pro 11 を使用しています。 get関数で日付や月を取得する際に2桁(1桁の場合、0埋め)で取得できるでしょうか? (1月⇒「01」、1日⇒「01」) 1桁の数値を2桁(前0埋め)にするのが目的です。 get関数に限らず、実現方法があればご教授お願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • ki073
  • ベストアンサー率77% (491/634)
回答No.2

"file" & Get(日付)でfile2012/02/06のようになりますが、環境設定が日付のフォーマットに影響するから違うのかな。 Filemakerは日付や数値のデータタイプはほとんど区別しないようですね。"file" & Month(Get(日付)) & "_" & Day(Get(日付))でも問題ないみたいです。 MonthとかDayとかで強引に作られてはいかがですか? Get(日付)の関数はこの質問で初めて知りました。Filemakerはデータを貯めて、必要な形式で書類として書き出すという使い方がほとんどなので。 先ほどレコード数を見たら100万件を越えるものがありました。リレーショナル先も含めると400万件程度。結構平気なようです。

sakuuuuu
質問者

お礼

再度回答ありがとうございます。 独自で調べ問題解決いたしました。 "0"の文字列とget(日付)を&で文字連結させ、左から2桁を取得すると 想定通りの値を取得することができました。 例) 月を2桁(前0埋)で取得  ⇒left("0"&Month(get(日付)),2) 知っている関数ばかりです。。。 ちょっと感心してしまいました。 やっぱり創意工夫なんですね。 ki073様もいろいろ調べてくださってありがとうございます。 答えていただいたおかげでモチベーションが上がりました!

その他の回答 (1)

  • ki073
  • ベストアンサー率77% (491/634)
回答No.1

表示をするためなら、いろいろな表示書式を指定できますので普通それを使います。 ファイルに書き出す時は、指定した書式に従って書き出せます。 月や日を整数値で取り出すことができますので、計算にはそれを使用します。 二桁にする必要は他に思い当たらないのですが。

sakuuuuu
質問者

お礼

回答ありがとうございます。 用途はファイルの名称に使用しています。 スクリプトで出力するcsvファイルのファイル名に日付を採番しています。(ファイル名_YYYYMMDD.csv) 1桁で取得すると1月11日と11月1日が両方とも「2012111」となってしまいファイル名が重複してしまいます。また、1桁だとファイル名でソートするときも日付順にソートされません。 VBAで作業していたときはFORMAT関数を使用して採番していたのですが、ファイルメーカーでは同様な関数ありません。 皆さんどのようにされているのか聞きたくて質問しました。 よろしくお願いします。