- ベストアンサー
ドロップダウンリストで選択した商品の金額を2倍にする方法
- エクセルの2010で、sheet2のA列に商品、B列に金額があります。sheet1のドロップダウンリストで選択した商品の金額を2倍にしたいです。関数を使用することで簡単に実現できます。
- E1(商品)がsheet2のA1~A3の場合、G1(個数)×2倍する方法を教えてください。関数を使用することで、選択した商品の金額を2倍にすることができます。
- 初心者でもわかりやすい方法で、エクセルのドロップダウンリストで選択した商品の金額を2倍にする方法を教えてください。関数を使うことで、簡単に実現できます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Sheet1のG1セルはデータを手入力するための欄なのですから、そこに入力された値そのものを自動的に2倍にする方法は御座いません。 もし、マクロ等を使用してG列に入力されている値を2倍にする様にするようにしてしまいますと、E列に入力されている商品名を例えば「りんご」から「メロン」に変えて、更に「パイナップル」に変更した場合などには、最初に入力した個数の8倍の個数となってしまいます。 ですから、Sheet1のG列の個数そのものを2倍にするのではありませんが、以下の様な方法は如何でしょうか? まず、Sheet1のG列の項目名を「個数入力」等とし、H列の項目名を「実際の個数」等としておき、合計金額はH列ではなくI列に表示させる様にします。 そして、Sheet1のH2セルには次の関数を入力して下さい。 =IF(AND($E2<>"",ISNUMBER($G2)),$G2*((COUNTIF(Sheet2!$A$1:$A$3,$E2)>0)+1),"") 次に、Sheet1のI2セルには次の関数を入力して下さい。 =IF(COUNT($F2,$H2)=2,$F2*$H2,"") そして、Sheet1のH2~I2の範囲をコピーして、同じ列の3行目以下に貼り付けて下さい。 次に、適当な使用していないシート(ここでは仮にSheet3とします)のA1セルに次の関数を入力して下さい。 =IF(Sheet1!A1="","",Sheet1!A1) 次に、Sheet3のA1セルをコピーして、Sheet3のB1~F1の範囲に貼り付けて下さい。 次に、Sheet3のG1セルに次の関数を入力して下さい。 =IF(Sheet1!H1="","",Sheet1!H1) 次に、Sheet3のG1セルをコピーして、Sheet3のH1セルに貼り付けて下さい。 次に、Sheet3のA1~H1の範囲をコピーして、同じ列の2行目以下に貼り付けて下さい。 そして、Sheet3のG1セルの関数を消去して、代わりに「個数」と入力して下さい。 これで、Sheet1は入力専用のシートとして使用し、印刷等はSheet3で行えば良いと思います。
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
>E1(商品)がsheet2のA1~A3の時は、G1(個数)×2倍 G1の式を =今の式*(COUNTIF(Sheet2!A1:A3,E1)+1) とでもしておきます。
お礼
keithinさん、回答ありがとうございます。
お礼
取り急ぎ、そのまま入力したら、できました! すごい! 助かりました。 とても丁寧に教えてくださってありがとうございます。 どうなってるのか、今からじっくり勉強してみます。