
■ @って?
Excelでセルに文字を打つ時に、先頭に@(アットマーク)を付けると関数の一覧が表示されたり、エラーになったりします。


どうやら、=(イコール)と同様に、計算式が使えるようです。
ふむ、しかし@(アットマーク)で関数の一覧が出るってどういうことだろ?
■ @で関数を打ってみた
ためしに、エラーが発生しないように適当な関数を作ってみます。

完成後の数式を確認すると、@が=に変わっています。

■ =との違い
今度は、関数以外の計算式を入れてみます。
セルA1とA2を足す計算式を使うと、エラーが発生しました。

当然ですが、=に変えると問題なく動作します。

ふむ、@を使えるのは関数だけのようですね。
■ @を使いたい
今度は、先頭に@を付けた文字列を打ってみます。
単純に打つと、関数扱いされるので文字列として扱われるように先頭に'(シングルクォート)を付けます。

先頭が'(シングルクォート)で始まる入力は、Excelでは文字列として認識されます。
あくまでも、内部的に認識させるだけなので、表示(印刷)に'(シングルクォート)は表示されません。
これで十分だと思うのですが、'(シングルクォート)が気に入らなければ、セルの書式を文字列に変えてもOKです。

メモ帳などに文字を入力して、そこからコピー&ペーストで貼り付けると、書式を変えずに入力できます。

書式が「標準」のままで、入力出来ました。
ただ、編集しようとするとエラーになるし、トラブルの原因になりかねないので、あまりお勧めできません。
■ Lotus 1-2-3
いろいろ調べたところ、Lotus 1-2-3(ロータス ワン・ツー・スリー)っていう表計算ソフトが流行した事があって、こいつは関数を入力するのに=(イコール)ではなく、@(アットマーク)を使っていたようです。
Lotus 1-2-3のユーザーがExcelに切り替えやすいように、互換機能として用意したようです。同じような話で、日付の差分を表示するDATEDIFって関数も同じような理由で、関数ウィザードに表示されなかったりします。
■ 後書き
今回のテスト環境は、WindowsXP SP3、Excel2010です。
まぁ、Lotus 1-2-3との互換ってことは、下位のバージョンでも同じように動作すると思われます。
今回、わざわざ@について調べてみたのは、まったくの別件で調査依頼があって、その障害原因がこの@だったからです。その件については、次回の記事で紹介します。
スポンサードリンク


