君たちは永遠にそいつらより若い

技術と音楽と日々のこと。

Excelで式の区切り文字がセミコロンに変化して、更にエラーになる(グローバルな理由で)



現象

同じファイルを開いているのに、あるメンバー(ベトナム人メンバー)のExcelでだけ、以下のようになってしまう現象が起こって、ハマった。

  • 計算対象の値
    • 2014-09-06 10:58:48.0のような文字列でText型貼付け(案件の事情)
  • 現象
    • うまく数式が動かずエラーになる(#VALUE!になる)
    • 式の区切り文字がカンマでなく、セミコロンに変化する
      • 他の人: e.g. =IF(EXACT(1*U7,1*AP7),"○","×")
      • 問題の彼: e.g. =IF(EXACT(1*U7;1*AP7);"○";"×")

原因

  • Macの言語と地域の設定(Language & Region)で、数値の区切り記号(Number separators)の桁区切り(Grouping)が.、小数点(Decimal),になっていた
  • そのため、2014-09-06 10:58:48.02014-09-06 10:58:48,0にすると動く

ベトナムでは、数字の桁区切りにはピリオド.、小数点にはカンマ,を使う

f:id:kuteken:20150504145746p:plain

解決方法

  • Mac言語と地域の設定 > 詳細 (Language & Region > Advanced) から数値区切りの設定を変更し、Excelを再起動する
    • 書式の言語(Format language)をEnglishなどに変える

f:id:kuteken:20150504145749p:plain


他メンバーにとっては当たり前すぎて"I can't resolve!"とお手上げ。僕もまさか小数点が,であるなんて思いもしなかったので、ちょっと悩んだ。海外のメンバーと作業するときは、この辺の常識も疑ってかかろう。