• ベストアンサー

同じ数式ですが、Winでは曜日表示されるのに、Macでは表示されません。

Excellについて質問致します。 =IF(CELL("contents",A4)>0,TEXT(CONCATENATE(TEXT($A$1,"#0"),"/",TEXT(A4,"#0"),"/",TEXT(表紙!$A$1,"00")),"aaa"),"") Windows版では上の方法で曜日を表示しています。 しかしこれをMac版に持って行くと、日月年が表示されてしまいます。 どうすればMacでも曜日表示に出来ますでしょうか?

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

  • ベストアンサー
  • CMLT
  • ベストアンサー率40% (143/357)
回答No.1

おそらく A1 に数値で年(例2009) A4 に数値で月(例2) 表紙!A1 に数値で日(例18) と入っていて、A4>0が真なら曜日、偽なら""としているのでしょうがずいぶん回りくどい数式にしたものです。 まず日付として引っ張るのは =date($A$1,A4,表紙!$A$1) でOK これを曜日表示にするのは関数でなくても書式のユーザー設定でaaaとすれば良い。 あとはIF(A4>0,上記日付関数,"")としてあげれば良いでしょう。 CELLやCONCATENATEは必要ありません。 Mac版は良く分かりませんが、もしかしたらCONCATENATE()の部分がシリアル値ではなく文字列のために、TEXT(,"aaa")が処理できてないのでは? そのセルの表示形式を数値にした場合にシリアル値に変化するか確認してみてください。

qqqwwwdayo
質問者

お礼

=IF(A4>0,DATE(表紙!$A$1,$A$1,A4),"") これでばっちり出来ました! この方が遥かにスマートですね。 本当に助かりました。 有り難うございました。

その他の回答 (1)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

Mac版は手元にありませんので想像になりますが…… もしかするとMac版はTEXT関数で表示形式が"aaa"では曜日表示にならないのかも知れません。 A1セルに今日の日付(2009/02/18)を入れて、別のセルに =TEXT(A1,"aaa") と、入れて見てください。「水」と表示されますか? 「水」と表示されない場合、セルの書式設定で曜日に出来ませんか? それも出来ない場合は、表示形式以外の方法で曜日を表示するしか無いかもしれません。 例:=MID("日月火水木金土", WEEKDAY(A1), 1)

qqqwwwdayo
質問者

お礼

ご回答頂いた中の方法で解決する事が出来ました。 私の数式はあまりよろしくない物のようでした。 アドバイス有り難うございました。

関連するQ&A