- 締切済み
数量×単価+数量×単価... 合計を出すどういう関数式になりますか?
A B C D E F G H I 1 A4 A3 A2 A1 2 個数 単価 個数 単価 個数 単価 個数 単価 合計 3 5 8.9 1 17.8 6 10.5 ☆ 単価にはIF関数を使いその列ごとに個数が入力されると単価も自動的に表示されるように設定しています 1行目のA1とB2は結合されています。また他のセルも同様に結合されています A2に個数、B1に単価、C1に個数、D1に単価と交互に数値が入っています。 個数×単価の全ての合計を合計のセル☆に求めたいです。 またE列、F列には個数がないということで、ここには数値をいれたくなく、また「0」を入力しない状態でエラーが出ないようにしたいですその場合どんな関数式になりますか?本当はもっとセルに単価と数量が続いています。自分で考えるととても長い関数になってしまいます。 スマートな関数式と効率のいい関数式を探しています。どなたかよろしくお願いします。
- みんなの回答 (8)
- 専門家の回答
みんなの回答
- izmlz
- ベストアンサー率55% (67/120)
=SUMPRODUCT(A2:G2,B2:H2,MOD(COLUMN(A2:G2),2)) で算出できますが、やはり個数、単価をそれぞれ一列に入力するのが本筋だと思います。
私も#2さんの > なぜ一つのセルだけで答えを出そうとするのでしょうか? に賛成です。 4行目に個々の個数×単価の計算結果が出ていては体裁が悪いというのであれば、 4行目の行の高さを0にすれば、4行目は見えなくなりますし、印刷もされません。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 もう回答は出ているようですが、素朴な疑問として、 A B 個数 単価 5 8.9 1 17.8 6 10.5 =SUMPRODUCT(A2:A5,B2:B5) で簡単に出ますね。C列に、= A2*B2 で、出しておいて、その列を非表示にしてもよいし、なぜ、このようには出来なかったのでしょうね。 表計算の基本は、表を縦に使うこと、というのが基本ですね。そのために、横が短く、縦が長くなっているわけです。
- mshr1962
- ベストアンサー率39% (7417/18945)
#3の方のが一番スマートでしょうけど...セルの内容がブランクか数値なら =A2*B2+C2*D2+E2*F2+G2*H2 で計算できます。 数式を使う場合は =PRODUCT(A2,B2)+PRODUCT(C2,D2)+PRODUCT(E2,F2)+PRODUCT(G2,H2) =SUMPRODUCT((MOD(COLUMN(A2:H2),2)=1)*(A2:H2),(MOD(COLUMN(A2:H2),2)=0)*(A2:H2)) 等の方法もあります。
- imogasi
- ベストアンサー率27% (4737/17069)
ユーザー関数で 標準モジュールに Function ss(a) s = 0 For Each cl In a If cl.Column Mod 2 = 1 Then s = s + cl * cl.Offset(0, 1) End If Next ss = s End Function ーー シートで =SS(A2:F2)のように入れる。 例データ A列 B列 C列 D列 E列 F列 G列 x a x a x a 1 10 2 20 3 10 80 3 10 2 10 3 30 140 2 20 2 50 140 ーーー G2に =ss(A2:F2) 式を縦方向に複写する。 結果 上記 G列 データのない列があってもOK ーーー >単価にはIF関数を使いその列ごとに個数が入力されると単価も自動的に表示されるように設定しています。 関数を考えるときはセルの値の来歴は気にしなくて良い。IF関数を使った式の結果であろうと、直接入力された値であろうと同じ。 この点を判ってない質問もある。 ーー >1行目のA1とB2は結合されています。また他のセルも同様に結合されています エクセルの表は(見出し部は結合して良いが)計数部はセル結合を出来るだけしない設計にしないと、面倒になりますよ。 本件は「計数部」でないようだが。であれば書く必要なし。質問は 実用内容を抽象化できるレベルになってほしい。回答にそれが影響するかどうか見極められないようでは、もっと経験が必要。
- maron--5
- ベストアンサー率36% (321/877)
◆こんな方法はいかがでしょう A B C D E F G H I 1 個数 単価 個数 単価 個数 単価 個数 単価 合計 2 5 8.9 1 17.8 6 10.5 125.3 I2=SUMPRODUCT((A1:G1="個数")*A2:G2,(B1:H1="単価")*B2:H2)
- yuu_yuu
- ベストアンサー率41% (34/81)
求めたいのは、 >>個数×単価の全ての合計を合計のセル☆に求めたいです。 ですよね?? 他の質問者さまもそうなのですが、なぜ一つのセルだけで答えを出そうとするのでしょうか? 今回の場合、4行目にそれぞれの個数×単価の計算をして、4行目をSUMすれば答えは出ますよね? 複数のセルを使っての計算はスマートではないのでしょうか?
- okormazd
- ベストアンサー率50% (1224/2412)
申し訳ないがまったく理解できません。 単価にはIF関数→なぜ A1とB2は結合→できるのか 他のセルも同様→できるのか A2に個数、B1に単価、C1に個数、D1に単価と交互→交互? スマートな関数式→スマートな説明をぜひ