

No.5ベストアンサー
- 回答日時:
>D2 2019
>E2 mddまたはmmddを数値
>X2→J2
この前提です。(添付図参照)
J2へ
=DATE(D2,E2/100,MOD(E2,100))
ユリウス日を表示したいセルへ(添付図ではF2)
=(J2-1)+M2+2415020.125
と入力します。(書式は数値にしてください。確認のために小数点以下6桁程度を表示するとよいでしょう。)
値が正しいかどうかは
https://eco.mtk.nao.ac.jp/cgi-bin/koyomi/cande/d …
で確認してください。(私もここで確認済みです)時刻は日本標準時刻を選択してください。(世界標準を選んではいけません)

No.4
- 回答日時:
No1です
補足がほとんど無いので、式にはできないので方法としての回答です。
エクセルのデフォルトでのシリアル値は、1900/1/1 00:00:00 を1として、1日を1とカウントする実数で表されています。(Macは1904/1/1を基準に計算)
No2様が既にご指摘ですが、これ以前の日付をシリアル値として計算しようとするのには無理がでます。
一方で、ユリウス日の計算方法を国立天文台の方式によることにすれば、
http://eco.mtk.nao.ac.jp/cgi-bin/koyomi/cande/da …
1899/12/31 00:00:00(=シリアル値の0に相当する日付)のユリウス通日は、2414989.50 となりますので、シリアル値で示すことのできる日(=1900/1/1以降)であれば、シリアル値にこの通日を加算すれば求められることがわかります。
1900/1/1より旧い日付の場合は、シリアル値では表せないので、日数を数値として計算して減算するような計算で対応する必要があります。
ひとまず、そこまでは必要ないものと考えれば、上述のように
ユリウス通日 = 日付のシリアル値 + 2414989.5
で求められます。
ただし、「シリアル値」は世界標準時換算であるものとします。
結果が実数のままでも良ければそのままでOKですし、時間部分を時刻表示にしたければ、少数以下の数値だけを切り出して、エクセルの書式で時刻表示すれば良いでしょう。
(日数は、少数以上の部分がそのまま日数になります)

No.3
- 回答日時:
>219年ではありません。
すいません!時刻は日本標準時でよろしいのですね。そのつもりでの回答です。(補足要求の回答がないので・・・)
D2はシリアル日付にできませんでしょうか。
セルD2に2017/7/1と入力し、書式設定で日付にします。(そうすると書式設定を標準にすると43647の数字になります)
この状態で、
ユリウス日を表示したいセルに
=IF(AND(LEFT(CELL("format",D2),1)="D",INT(SUM(D2))=D2,SUM(D2)>1,LEFT(CELL("format",M2),1)="D",ISNUMBER(M2),SUM(M2)>0,SUM(M2)<2),D2+M2-"1904/1/1"+2416480.125,"")
と入力すればOKです。
もし、どうしても、D2をシリアル日付にできないなら(数値で20190701と書きたいなら)その旨、補足してください。
その場合は、D2を一旦シリアル日付に変換し(X2がその日付とすると)X2とM2からユリウス日を算出する案を提示します。
(X2はこちらで提示したセルですが、ほかのセルを望むならその旨提示してください)

No.2
- 回答日時:
>似たような質問をみつけて以下のようにかいてみたのですが、ダメでした。
関数の意味もよくわかりませんでした。お手上げ状態です。=IF(AND(LEFT(CELL("format",D2),1)="D",INT(SUM(D2))=D2,SUM(D2)>1,LEFTCELL"format",M2),1)="D",ISNUMBER(B1),SUM(B1)>0,SUM(B1)<2),D2+M2"1904/1/1"+2416480.125,"")
私が、正解を回答できる保証はありませんが、補足要求です。
この関数式では、西暦219年7月01日では、あまりにも古い日付なので対応できません。(上記の関数はシリアル日付を前提にしています)
本当に西暦219年のユリウス日がほしいのでしょうか。
もし、そうだとして、変換対象となる西暦の範囲は何年から何年までなのでしょうか。
また、時刻は、日本標準時刻の時刻ですか、それとも、世界標準時の時刻ですか。
No.1
- 回答日時:
こんにちは
>セルD2に2190701と年月日
これはユリウス日なのでしょうか?
(にしても随分旧い)
太陽暦にしては記述ルールがよくわからないですし…
その辺りに加えて、入力値が文字列なのかシリアル値なのか等もハッキリさておけば、回答がつくものと思います。
わかりにくくてすいません。
D2に太陽暦で年月日で標準書式
M2に時刻で書式は時刻です。
似たような質問をみつけて以下のようにかいてみたのですが、ダメでした。関数の意味もよくわかりませんでした。お手上げ状態です。
=IF(AND(LEFT(CELL("format",D2),1)="D",INT(SUM(D2))=D2,SUM(D2)>1,LEFTCELL"format",M2),1)="D",ISNUMBER(B1),SUM(B1)>0,SUM(B1)<2),D2+M2"1904/1/1"+2416480.125,"")
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelに入力した個々の日付の数...
-
日付だけを変更して印刷(Excel)
-
31:30:00が1900/1/1 7:30:0
-
エクセルでENTERを押すと数式が...
-
Excelで半年後の日付を計算したい
-
入力後に日付順になるように自...
-
Excelで8/26等の日付を全てその...
-
日付の照合でFALSEになります。
-
エクセル 当番表の作り方 エク...
-
エクセルで1年後の月末を表示さ...
-
エクセルで数字列の間に『/』を...
-
ファイルのオープン時に今日の...
-
EXCELで直近の日付を抽出する関数
-
ワード差込について
-
エクセル関数で日付かどうかの...
-
日付を入力したセルをファイル...
-
エクセルのセルにたとえば「756...
-
excelで月末日を判定したい
-
VBAでセルに入っている日付をシ...
-
word、日付選択コンテンツの隣...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelに入力した個々の日付の数...
-
日付だけを変更して印刷(Excel)
-
入力後に日付順になるように自...
-
31:30:00が1900/1/1 7:30:0
-
Excelで半年後の日付を計算したい
-
エクセルでENTERを押すと数式が...
-
Excelで8/26等の日付を全てその...
-
エクセルで数字列の間に『/』を...
-
エクセル 当番表の作り方 エク...
-
エクセル関数で日付かどうかの...
-
ファイルのオープン時に今日の...
-
日付を入力したセルをファイル...
-
【マクロ】A列にある、日付(本...
-
日付の照合でFALSEになります。
-
EXCELで直近の日付を抽出する関数
-
WORDで翌日や翌々日の日付を表...
-
エクセルで日付入力欄を作成し...
-
ワード差込について
-
エクセルで1年後の月末を表示さ...
-
日付入力→指定のセルの色を塗り...
おすすめ情報
申し訳ございません。誤記です。
×:セルD2に2190701と年月日
〇:セルD2に20190701と2019年7月1日
219年ではありません。すいません!
回答ありがとうございます。
その後試行錯誤繰り返して元のデータD2を削除してしまい、
D2に4桁数値で年2019
E2に月日、この月日が3桁(1月~9月はm)と4桁(10月~12月はmm)にしてしまいました。
format関数で元に戻そうとしましたが、これも失敗しました。
D2 2019
E2 mddまたはmmddを数値
X2→J2
でお願いできますでしょうか。
よろしくお願いいたします。