- ベストアンサー
Excel配列の掛け算の工夫(記号を使いたい)
- Excelの配列の掛け算で記号を使いたい場合、C6を0にすると答えが0になってしまいます。これを避ける方法はありますか?
- また、C6に記号を使って100%と入力し、その結果も同じ結果になる方法はありますか?
- C6を0にすると答えが0になってしまう問題と、C6に記号で100%を入力する方法についての質問です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
色々と間違いに間違いを重ねています。 まず,ご相談に書かれた発端の式の >{=SUM($C$4:$F$4)*(C6:F6)} この式が,そもそも間違っています。 これがご相談投稿に際しての誤記ではない事は, >このC6の部分をnullにしてしまうと、答えが0になってしまいます。 の部分から確かにそういう式を書いていると思われますが,その式は間違っているのでC6を空ではなく数値を入れても間違った結果が計算されます。 一般に推奨される正しい式: =SUMPRODUCT($C$4:$F$4, C6:F6) この式はただEnterして入力します( { }で囲われた式にしません)が,配列数式です。 計算に使う各セルに空白があっても意図した通りの結果が得られます。 計算に使う各セルに数値ではない値(たとえば「*」)が入力されても,計算出来ます。が,当該のセルはエクセルの一般ルールに従いゼロとして扱われます。そのままで「100%」と読ませる事はできません。 別の式で,あなたが間違えた式: =SUM( ($C$4:$F$4)*(C6:F6) ) をCtrl+Shift+Enterします。 計算に使う各セルに空白があっても意図した結果が得られます。 計算に使う各セルに数値ではない値(たとえば「*」)が入力された場合,#VALUEのエラーになります。この式のままで計算を通す事はできません。 >「*」を100%にしたい 配列数式をごりごりと組んでいけば「やれば出来ます」が,イミフメイになるだけなので一般に推奨できません。 数字として計算させたいセルには普通に(丁寧に)数字を記入して作製しましょう。 計算例: =SUM(IF(ISNUMBER(C6:F6),C6:F6,1)*$C$4:$F$4) をCtrl+Shift+Enter
お礼
配列についてあまり、理解していませんでした。 色々とご指摘いただきありがとうございました。