エクセルの入力規則に関する質問です。
現状で活用しているエクセルの表は以下のように入力されていますが、
“C1の手数料部分を入力規則のように、数通りの計算式で制限をかけたい”という質問です。
A1(お客様名) B1(売上) C1(手数料) D1(報酬額)
A1のお客様名によって、C1の手数料が3通りあります。
(1)なし(空欄)
(2)B1(売上)×10%
(3)B1(売上)×10%+150円
この3通りの計算式を“入力規則のように制限”を設けて、
管理できると助かるのですが、可能でしょうか?
尚、可能であれば、更にC1に入力された見た目を、
『A』『B』『C』のようにできれば、有難いです!
(1)なし(空欄)⇒A
(2)B1(売上)×10%⇒B
(3)B1(売上)×10%+150円⇒C
困難な質問かとは思いますが、分かる方は、ご助力頂ければ助かります。
何卒、よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
意図していることと違ったら申し訳ないのですが、
C1の入力規則を
[種類]:リスト
[元の値]: 0,=B1*0.1,=B1*0.1+150
とすれば3種の計算式以外の入力はできなくなります。
また、A~Cでの表示ですが、見かけ上なら可能です。
C1の入力規則の[元の値]を A,B,C として、
別のセル、例えばE1に
=IF(C1="A",0,IF(C1="B",B1*0.1,IF(C1="C",B1*0.1+150,"")))
と、計算します。
C1の数値を使っていた箇所はすべてE1に直し、Eの横幅を0にすれば見た目もすっきりします。
この回答への補足
有難うございます。早速試してみましたところ無事にできました。m(__)m
一番分かりやすかったです!
ちなみに、この "A" "B" "C" 欄に『10%』のように“%”を入れたいのですが、
『%』の文字が悪いのか、上手くできませんでした。
この場合はどうすれば可能でしょうか?
恐縮ながら、こちらもご教授の程、お願いできませんでしょうか?
何卒宜しくお願い致します。m(__)m
No.5
- 回答日時:
No.4です。
No.4の式は、A列が未入力だと、エラーを表示します。これが嫌だという場合は、式の途中に「1+」と「,""」を次のとおり挿入すれば、解決します。=choose(1+countif(f:f,a1)+2*countif(g:g,a1)+3*countif(h:h,a1),"","",b1*10%,b1*10%+150)
または
=choose(1+countif(f:f,a1)+2*countif(g:g,a1)+3*countif(h:h,a1),"","A","B","C")
No.4
- 回答日時:
お客様の全体の人数が少ないならコンパクトな数式1本で済ますこともできるでしょうが、何人か分からないので、式のほかにリストを用意するということにします。
F列にAの人、G列にBの人、H列にCの人のリストが作成済みだということにします。なお同一人物が入力されているセルの個数は1つのみとしてください。C1セルに次のとおり入力
「売上×10%+150」などの計算結果を表示する場合
=choose(countif(f:f,a1)+2*countif(g:g,a1)+3*countif(h:h,a1),"",b1*10%,b1*10%+150)
「A」、「B」または「C」を表示する場合
=choose(countif(f:f,a1)+2*countif(g:g,a1)+3*countif(h:h,a1),"A","B","C")
No.3
- 回答日時:
次の通りに行います。
ただし表のレイアウトに依存するので,「実は質問に書いた通りじゃありませんでした」では動きません。練習としてご自身がご相談に書かれたとおりに作成し,まず出来る事を確認してから実地に応用してください。
手順:
C1セルを選択する(必ず)
名前の定義を開始する
名前 typeA
参照範囲 =""
として追加する
同様にC1を選んだまま
名前 typeB
参照範囲 =B1*10%
名前 typeC
参照範囲 =B1*10%+150
をそれぞれ追加する。(A,B,Cではないので間違えないこと)
C列を列選択し,C1セルがアクティブセルになっている事を確認の上,入力規則を開始する
種類 リスト
元の値 ,=typeA,=typeB,=typeC
と設定する。(先頭にカンマがあるのを見落とさないこと)
No.2
- 回答日時:
こんにちは!
No.1さんが仰っているようにプルダウンでA~Cまでを表示させ、D列に計算式を入れてやるのが
一番簡単な方法だと思いますが、
>C1に入力された見た目を、
>『A』『B』『C』のようにできれば・・・
とあるので、無理やりって感じです。
VBAになってしまいますが一例です。
C列のリスト表示は「A・B・C」のいずれかに設定しておきます。
画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストして、C列のプルダウンでA~Cのいずれかを選んでみてください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
If Intersect(Target, Columns(3)) Is Nothing Or Selection.Count <> 1 Then Exit Sub
Application.EnableEvents = False
If Target = "A" Then
Target = ""
MsgBox Target.Offset(, -2) & "様の" & vbCrLf & "手数料は、『A』です。"
ElseIf Target = "B" Then
Target = Target.Offset(, -1) * 0.1
MsgBox Target.Offset(, -2) & "様の" & vbCrLf & "手数料は、『B』です。"
Else
Target = Target.Offset(, -1) * 0.1 + 150
MsgBox Target.Offset(, -2) & "様の" & vbCrLf & "手数料は、『C』です。"
End If
Application.EnableEvents = True
End Sub 'この行まで
※ C列には計算結果を表示し、「見た目」の部分はメッセージボックスで表示するようにしてみました。
的外れならごめんなさいね。m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 数式を教えてください 2 2022/06/02 12:24
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- その他(Microsoft Office) IF関数について教えてください 2 2022/05/10 13:31
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルの表で A1にデータの入力規則でリストを作って、 (リス、キリン、ゾウとします) リストを選 4 2022/07/15 09:29
- Excel(エクセル) ある範囲のセルに何を入力すると、別のセルに○を表示させる 3 2022/04/05 15:51
- Excel(エクセル) エクセル関数教えてください 3 2022/06/21 10:22
- Excel(エクセル) エクセルについての質問です A1に入力した数字をB1に入力した数字に+して C1に出した時に、B2に 4 2022/12/09 21:57
- Excel(エクセル) エクセルで月末、月初の判定をしたい。 4 2022/05/18 23:22
- Excel(エクセル) Excelの空文字判定について 7 2023/01/06 13:25
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでの計算式もしくはシ...
-
6ヶ月経過日を算出する式
-
excel 段階式歩合給与計算につ...
-
エクセルVBA 選択した値でセル...
-
エクセルの基礎なんですけど、...
-
エクセル 数字並び替え
-
拡張子はなぜ、大文字と小文字...
-
Androidアルバムの画像を消去で...
-
複数のフォルダへ同時にファイ...
-
ひとつのファイルを一括で複数...
-
Windowsフォルダ内のファイルと...
-
フォルダの中に1個しかファイ...
-
フォルダの並び替えの項目を固...
-
vssver2.scc って消してもいい...
-
ドナルドウズを消す。
-
windows (ウィンドウズ) の 「...
-
DHCP設定バッチnetshコマンドに...
-
Windows10のタスクスケジューラ...
-
softonicという物をダウンロー...
-
Windows10 で登録した外字を他...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでの計算式もしくはシ...
-
6ヶ月経過日を算出する式
-
Excelで時給計算、10:30時間を...
-
【VBA】結合セルの値をoffsetで...
-
excel 段階式歩合給与計算につ...
-
エクセルで簡単に粗利と利益率...
-
エクセル 数字並び替え
-
エクセルで行が飛んだセルを一...
-
エクセルVBA 選択した値でセル...
-
受注した数量を最大積載量に応...
-
数式条件付き掛け算
-
【エクセル】特殊な入力規則の...
-
Excel2003達成率表示
-
Excelで四捨・六入がしたいです
-
拡張子はなぜ、大文字と小文字...
-
Androidアルバムの画像を消去で...
-
フォルダの並び替えの項目を固...
-
ひとつのファイルを一括で複数...
-
Windowsフォルダ内のファイルと...
-
フォルダの中に1個しかファイ...
おすすめ情報