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

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

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

You are not logged in.

Announcement

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


#1 2014-09-09 16:11:46

素人U
Guest

和暦を西暦に変換したい

お世話になります。
和暦 平成26年7月10日 のような和暦を
西暦の2014/7/10 に変換するにはどのようにすれば可能でしょうか?

使用ソフトはFM12です。

#2 2014-09-09 16:24:17

Shin
Member

Re: 和暦を西暦に変換したい

普通は逆なんですが。
FMに、2014/9/9 と入力すれば、平成26年9月9日 と表示する機能はあります。

もしテキストで、平成26年7月10日 と入っているのでしたら、例えば、
Substitute ( テキスト ;[ "平成" ; "H" ];[ "昭和" ; "S" ];[ "大正" ; "T" ];[ "明治" ; "M" ];[ "年" ; "/" ];[ "月" ; "/" ];[ "日" ; "" ])
という計算フィールドを作れば良いでしょう

Offline

#3 2014-09-09 17:46:29

素人U
Guest

Re: 和暦を西暦に変換したい

shinさん、ありがとうございます。

自分自身の問題事態も把握できていないことが判りました。内容説明が不備で申し訳ありません。

エクセルの日付をインポートしたデータを変換するものでした。
形式が 平成26年1月21日 とあるものがインポートするとファイルメーカー上では 41660、
平成26年1月24日ですと、41663に変わっています。

この番号を変えることはできるのですか?

#4 2014-09-09 20:28:28

Hiro
Member

Re: 和暦を西暦に変換したい

結果の「41660」は日付番号で、FM側のフィールドタイプが「数値」タイプになっているから、と思います。

それにしても、エクセル日付「2014/01/21(=平成26年1月21日)」がFM数字「41660(=0115/01/23)」
になったと言うことは、エクセルは日付を1900年以降の経過日数で持っていると言うことか?
だとすると、FMの日付番号は0001年以降の経過日数だから、差「693594 (=1899/12/30)」を補足しないと、
正しい日付「735254 (=2014/01/21)」が得られませんネ。補正式は、
    GetAsDate ( インポート日付番号 + 693594 )

Offline

#5 2014-09-09 22:40:17

素人U
Guest

Re: 和暦を西暦に変換したい

Hiro様、詳細なる御教示ありがとうございます。
教えて頂いた、計算方法でやっていきます。

下記の私のまわりくどい計算式でなぜか2を引くと正解な日付が出たのですが、
このマイナス2が、1899/12/30と1900/1/1 の差なのですね?

Let ( a = "1900/1/1" ;

Date(Month(a);Day(a);Year(a)) + インポート日付番号 - 2

)

#6 2014-09-10 09:34:28

tim
Guest

Re: 和暦を西暦に変換したい

>エクセルは日付を1900年以降の経過日数で持っている
1904年から計算するオプションがある。

#7 2014-09-26 10:44:25

wattanabe
Member

Re: 和暦を西暦に変換したい

自分のエクセル2010場合は、その日付の行の表示形式が標準やユーザー定義になっていたのを
日付に変更してインポートしたらうまくいきましたよ。
参考になれば

Offline

#8 2014-09-26 11:35:26

Shin
Member

Re: 和暦を西暦に変換したい

tim wrote:

>エクセルは日付を1900年以降の経過日数で持っている
1904年から計算するオプションがある。

元々は、1900年起点がオプションだった。
1904起点にした意図を無視して1900起点オプションを作り、バグを埋めん込んでしまい、30年以上放置されている、というか、直すに直せない状況。1899/12/30 を足す、って変でしょ。1900/1,/2 は正しく計算できないので注意を。(現実には、今はほぼ無視できると思います、昔1900生まれの方で問題が出た事があった)
最初の3ヶ月ほどの連続日付をFMへインポートしてみるとわかると思う。

Last edited by Shin (2014-09-26 11:45:06)

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 8 queries executed - Memory usage: 513.09 KiB (Peak: 517.63 KiB) ]