• ベストアンサー

excel 2010のtext関数について

2007でtext関数をconcatenate関数に組み合わせて使い、文章の後ろに英語で月と(January,Februaryのように)年を表示していました。2010に切り替わったので、さっそく開いてみたのですが、なぜか1月、2月の表示になってしまいます。"mmmm"と入力すれば英語での表示になるとどの教科書にも書いてあったので安心していたのですが・・・。2007ではやっぱり英語表記に変わりはありません。2010では仕様に変更があったのでしょうか?だれかご存知の方が降りましたら、よろしくお願いいたします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

はい。なるほど,再現しました。 ウィンドウズのスタートメニューのプログラムのOfficeツールの中にあるMicrosoft Office言語設定で,主言語が英語になっていると,そのような計算結果が現れます。 ちなみにExcel2007でも,同じ条件で再現します。 ご質問の"mmmm"の他,"ddd","dddd"なども表示異常になりますね。 とりあえず簡易な解決策として =CONCATENATE("Month of ",TEXT(TODAY(),"[$-100]mmmm-yyyy")) と計算させてみてください。 若しくは,可能なら主言語設定を日本語に戻せたら戻してみてください。 #「$-100」には,深い意味はありません。意図通りに表示にさせるためのダミーのデータです。

shallowsou
質問者

お礼

ありがとうございます。指示のとおりに入れてみたら直りました。エクセルは奥が深いですね。ありがとうございます。

その他の回答 (2)

回答No.2

表示形式の中の「-」が悪さしている可能性があるので、「-」を引用符で括り、形式指定文字を明確にしてみて下さい。 つまり =TEXT(TODAY(),"""Month of ""mmmm""-""yyyy") としてみて下さい。 因みに、CONCATENATE関数は不要ですから、これでも駄目なら ="Month of " & TEXT(TODAY(),"mmmm") & "-" & TEXT(TODAY(),"yyyy") と、表示形式文字の誤認が有り得ない書き方にしてみて下さい。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

いいえ。例えばいまExcel2010に =TEXT(TODAY(),"mmmm") という式を入れると,キチンと意図したとおり June という結果が計算されます。 >なぜか1月、2月の表示になってしまいます こういった上手く行かないご相談では,可能な限り「実際のエクセルのセル(問題の,1月と結果が現れるセルのことです)に記入されている数式や実際の計算に使っている生のデータ」を手抜きせずにご相談に掲示し,「あなたのエクセルに起こっている事実」を情報提供してご質問を投稿するように心がけてみてください。 その確認の過程で,あれ,こう思ってたのに実はこうなってるじゃないかとご自分で気付く事もあるかもしれません。

shallowsou
質問者

補足

質問の仕方についての丁寧な補則をありがとうございます。 実際の式は =CONCATENATE("Month of ",TEXT(TODAY(),"mmmm-yyyy")) です。このようにすると、 Month of 6月-2010 と表示されます。2010は半角なので、意図したとおりに出るのですが、6月は全角です。そもそもexcel自体日本語のパッケージを買っていない(English-USバージョン)なので日本語が表示されること自体が不思議ではあるのですが・・・基本設定でかわったりするのでしょうか?

関連するQ&A