Excelで,数表を作っておくと,その範囲内の数値を入れると,数表の数値と数値の間の値を保管して求めるワークシートを「電気二重層キャパシタ溶接機の充電装置の製作記録(38)」の記事で紹介しました。久しぶりにこのファイルを開いてみました。すると,中で使っていた,例えばindirect関数の先頭に@が付いていました。調べてみると,Excelのアプリがバージョンアップして,方針が変わったからのようでした。以前のバージョンではindirect("A1:A2")のようなことができませんでした。新しいバージョンではA1の値がその数式を入れたセルに現れ,A2の値がその下のセルに入る(スピルする)のです。旧バージョンではエラーでした。すなわち,旧バージョンでは意図しない作用が起こることになります。そのため旧バージョンと同じ動作をするようにするため,自動で付けられたようです。