請求書のフォーマットを作成しています。
A(タイトル)B(数量)C(税抜価格)D(税込価格)E(合計)
1 ○○ 2 1000 2100
2 ○○ 2 1050 2100
3 ○○ 2 2100
1の場合ですと、Eのセルを「2100」にしようと思ったら
E=セルC*1.05*セルBになり、
2の場合ですと、Eのセルを「2100」にしようと思ったら
E=セルD*セルBになります。
そこで本題なのですが、
私は3のように、税抜価格をセルCに入力、もしくは、税込価格をセルDに入力。そのどちらを行ってもセルEに「2100」という計算結果を出したいのですが・・・
(1)そのようにする場合、セルEにはどのような数式を入れればよいのでしょうか?
(2)その際に、もしセルCに「1000」を入れたら、セルDは空白に、セルDに「1050」を入れたら、セルCは空白になるようにしたいのです(例えばセルCに「1000」が入力されている状態で、セルDに「1050」を入れると、セルCの「1000」が消えるような状態)そのようにするにはどうすればよいのでしょうか?
ご教授いただければ幸いです。
No.1ベストアンサー
- 回答日時:
入力結果によって、別のセル値を消すのはVBAじゃないと出来ないと思います。
D列が入力されていればそちらを優先し、そうでない場合はC列を程度であれば E2に
=IF(D2<>"",D2*B2,IF(C2<>"",(C2*B2)*1.05,0))
お礼が遅くなって申し訳ありません。
ご回答いただきましてありがとうございます。
なるほど・・・セル値を消すのは関数では無理なのですね。
>D列が入力されていればそちらを優先し、そうでない場合はC列を程度であれば E2に
>=IF(D2<>"",D2*B2,IF(C2<>"",(C2*B2)*1.05,0))
IF関数を組み合わせると、似たようなことはできるのですね。
もっと私も勉強しないと・・・
ありがとうございました。
No.2
- 回答日時:
関数ではセルの値を消すことはできません。
数値入力セルと、表示用セル(C列、D列)を別にすれば関数でできないこともありませんが、請求書ということであれば余分な作業用列を表示させるのは適切ではないと思います。従ってマクロでやることになります。
以下のマクロを「シート名右クリック」→「コードの表示」で開く画面に貼り付けて下さい。シート画面に戻り、C列、D列に値を入力して見て下さい。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C:D")) Is Nothing Then
Application.EnableEvents = False
If Target.Column = 3 Then 'C列なら右隣セルをクリア
Target.Offset(0, 1).ClearContents
Else 'D列なら左隣セルをクリア
Target.Offset(0, -1).ClearContents
End If
Application.EnableEvents = True
End If
End Sub
なおこのマクロはC、D列全てが処理対象になります。もしC2:D20だけを処理対象にしたい場合は、2行目のRange("C:D")をRange("C2:D20")に変更してください。
お礼が遅くなって申し訳ありません。
ご回答いただきましてありがとうございます。
このマクロ試してみました。
すごい・・・私が思っていた通りの処理ができているので
びっくりしました。
でも、やはりマクロを覚えないとこのような処理は無理なのですね^^;
今の私にとっては、マクロはまだまだレベルが高すぎるかも
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) WORKDAY関数 4 2023/06/08 13:23
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) Excel 関数 数式 について 2 2022/09/02 21:45
- Excel(エクセル) エクセル関数についてお教えください 3 2023/07/24 12:33
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Excel(エクセル) エクセル 自動計算 1 2023/01/30 13:28
- Excel(エクセル) エクセルシートの合計の変動 5 2022/04/05 15:56
- Excel(エクセル) Excel 特定セルの数値を参照したセルの0表示が空白にならないのはどうしてか? 3 2022/04/28 22:23
- Excel(エクセル) 【エクセル】複雑な関数を教えてください 1 2023/06/05 18:09
- Excel(エクセル) エクセルの昇順での数値入力のミスの見つけ方を教えてください。 4 2022/06/26 20:41
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
エクセルの対象セルの1つしか入力できないようにする方法。
Excel(エクセル)
-
ある二つのセルで、同時記入禁止する方法
Excel(エクセル)
-
Excel 条件によって入力禁止にする
Excel(エクセル)
-
-
4
あるセルに特定の文字列を打つと、他のセルに決められた文字が自動入力するように
Excel(エクセル)
-
5
Excelで、「特定のセル」に入力したら→「別のセル」に「○」を自動表示する方法
Excel(エクセル)
-
6
Excelの入力規則で片方だけ入力みたいなことをしたい Excelで入力規則を使いたいです。 条件は
仕事術・業務効率化
-
7
エクセルのIF関数で、隣のセルに入力があったら空白にする、というのを倫理式に追加したいのですが、うま
Excel(エクセル)
-
8
エクセル 特定の文字を入れると他のセルの色が変わる
Excel(エクセル)
-
9
エクセルで、日付を入力すると、別のセルに文字を自動的に表示させるようにするには。
Excel(エクセル)
-
10
エクセルでドロップダウンリストを複数連動させ、1つ目を変えた時2つ目以降をリセットさせたい
Excel(エクセル)
-
11
A1セルに入力したら、入力時間をA2セルに自動挿入
Excel(エクセル)
-
12
対象セル内(複数)が埋まったら文字を表示させたい
Excel(エクセル)
-
13
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
14
エクセル イベントマクロ Changeイベントを複数作りたい
Access(アクセス)
-
15
EXCEL:特定の文字が入力された日付を表示する方法
Excel(エクセル)
-
16
(Excel)あるセルに文字を入力しただけで、同じブック内のほかのワークシートにも、同じ文字が自動的に入るようにするには?
Excel(エクセル)
-
17
エクセルで表示形式の時刻の「0:00」を表示しないようにするには?
Excel(エクセル)
-
18
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
-
19
条件付書式で「=#N/A」に色を付けたい
Excel(エクセル)
-
20
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelでSUBTOTAL関数を設定した...
-
エクセル ボタンを押すとセルの...
-
VBAで結合したセルがクリアでき...
-
EXCELで、結合されたセルに連続...
-
セルを結合した場合の関数(COU...
-
エクセルで片方のセルに入力し...
-
VBAで “:” を含むセルの特定
-
エクセルでチェックボックスを...
-
Excelでnullになるような式のセ...
-
Excel 離れたセルへの連続デー...
-
セルの値を取得してSQL文に組み...
-
エクセルでセルをクリックして“...
-
Excel2007 セルの削除について
-
VBAで困っています。
-
【EXCEL】条件に合致するセルの...
-
エクセルの複数のセルを一括で...
-
EXCELで○ヶ月を○年○ヶ月に変換...
-
複数の文字列のいずれかが含ま...
-
A1セルに入力したら、入力時間...
-
参照先セルに値が入っていない...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelでSUBTOTAL関数を設定した...
-
EXCELで、結合されたセルに連続...
-
エクセル ボタンを押すとセルの...
-
セルを結合した場合の関数(COU...
-
エクセルで片方のセルに入力し...
-
VBAで結合したセルがクリアでき...
-
Excel 離れたセルへの連続デー...
-
エクセルでセルをクリックして“...
-
セルの値を取得してSQL文に組み...
-
エクセル 結合セル内に空白なら...
-
【EXCEL】条件に合致するセルの...
-
Excelのカウントアップボタンに...
-
エクセルで作業した日の日付を残す
-
VBAで困っています。
-
EXCEL VLOOKUP的コメント自動表示
-
Excelでnullになるような式のセ...
-
Excel セルを結合したものを抽...
-
Excelの表に自動でナンバリング...
-
エクセルでたくさんのセルを小...
-
Excel2007 セルの削除について
おすすめ情報