Excel で、ワークシートをグループ化して計算式を設定した見たものの、設定したシートはとりあえず計算結果がきちんと表示されるのに、グループ化されたシートの方には、今回再現した事例だと「SUM(RC[-3]:RC[-1])*RC[-5]」のような数式が設定されて、計算式が正しく反映されない... そんな症状を確認しました。
Excel 自体に、R1C1参照形式なる表示方法があることは当然わかっているので、R1C1参照形式が有効になっている?と思ってもみましたが、Excelのワークシート上は、列番号には、A、B、C... 行番号には、1、2、3... となっており、R1C1参照形式が有効になっているわけではありません。
ならなぜ?... 今回のトラブルについて再現、確認してみました。
【ワークシートのグループ化】
データの集計などでも使用されるワークシートのグループ化。グループ化して、データ入力する... そんな普通の作業のはずなのに、思わぬ落とし穴が...
上記の画像はサンプルで作成したものです。
新宿店と池袋店のシートをグループ化して、第一四半期の売上集計をSUM関数を利用して "F4" 以降に設定してみると....
本来は、同じ数式が設定されるはず... なのに
「SUM(RC[-3]:RC[-1])*RC[-4]」
な文字列が表示されました。よくよく見れば、RC(-3) なんてあるので、ご存じの方だったりすると「あれ? R1C1 形式?」なんて考えてしまうわけです。
ワークシートをご覧いただいても、列番号には、A、B、C... 行番号には、1、2、3... となっているわけですから、「R1C1形式」が有効になっていておかしい... なんてことではありません。
さらに数式を入力した、新宿店のシートも数式を設定して、オートフィルでコピーしてみると... 計算結果がおかしいですよね?
【全角と半角の違い】
実は、このトラブル。計算式を設定する際に「=」を全角で入力すると発生するトラブルになります。
では再現してみましょう!
1) Excelで今回作成したシートの、新宿店と池袋店のシートをグループ化して、第一四半期の売上集計をSUM関数を組みあわせて、作成します。ここで、"=" は、全角で入力してみます
2) Enter で確定すると、Excelは自動的に修正してくれて、"=" は半角になって、新宿店のシート上はとりあえず、正しい値が表示されます
3) そして計算式をオートフィルでコピーしてみると... あれ?計算結果もおかしいですよね。データがコピーされたような形になっています。さらに、その数式を確認してみると、数式は正しい... そんなおかしな状況です
4) そして今度のワークシートを開いてみると... 今回ご紹介したような「SUM(RC[-3]:RC[-1])*RC[-4]」といった数式がコピーされるわけです
例えば、Word などで計算式を設定する際に、やはり全角と半角を間違えて設定すると、構文エラーなどになってしまうわけですが、Excel だと計算式を入れているセルには、正しくはないものの数値が表示されたりするのでスルーしがちなわけですが、思わぬ落とし穴があるわけですね。
【追加】
ちなみに、ExcelでR1C1形式を有効にするには、Excelのオプションダイアログの数式から行います。
<参照>










