• 締切済み

セルに入力された金額チェック

ありきたりな質問かもしれませんが、検索しても見つからなかったので、質問します。 仕事で、見積書を作っています。 質問したい内容は、入力されたランク毎の金額を、マクロ実行ボタンを使わずに、自動チェックする機能です。 入力チェックであれば、「入力規制」でチェック可能ですが、金額の入力は決められた人(上司)しか入力出来ないため、エクセルの「入力規制」は金額が知られてしまうため、使えません。入力は決められた人以外金額を入力する権限がないのです。そこで、作成者に金額を知られずに金額のチェックを行うにために、モジュールにパスワードを掛けてチェックしたいと考えています。 そこで本題ですが、下記のようなシートのセルの金額をチェックする方法を教えてください。(案だけでもありがたいです) 単価  セル 金額 A単価 A1  1000 B単価 A2  2000 C単価 A3  3000 D単価 A4  4000 格単価毎に入力された時のみ、VBAでチェックをしたいです。 因みに、使用されない単価は列毎削除されます。 ご回答宜しくお願いします。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

別シートにVLOOKUP関数の対応表を持ち 入力値とA、B、Cの表を索引した単価金額とチェックしたらどうですか。 そして http://kokodane.com/tec3_6.htm にあるような、非表示シートを保護する。 ーー モジュールにパスワード設定なら、チェックするために読み込む、質問の対応表データのファイル名が、モジュールのコードを見させなくするので、隠せるのでは。 質問の表現がズバリで無いように思うが。 何で上司の(多分裁量件による)入力チェックをプログラムでやる必要があるのか。上限・下限チェックなどならわかるが。

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

金額は上司しか入力できないのに、作成者の入力金額をチェック??? 作成者は入力できないのでは??? 入力値に対してのイベントは「Worksheet_Change」が使用できると思いますが・・・ 私の読解力が無く、質問の意味が読み取れないので、これ以上はごめんなさい

関連するQ&A

  • エクセルで計算式の入力されているセルに直接入力もしたい

    エクセル2000での質問です。以下はセルA1,A2,A3を使った例です。 1.A1は以下の定められた単価のプルダウンリストがあり、選択します。    「空白」    「1000」    「2000」    「3000」 2.A2は個数を直接入力します。 3.A3セルに =A1*A2 と計算式を入力しています。 これでA3には合計金額が表示されますが、ここからが質問で私のしたいことです。 A1セルで「空白」が選択されている場合、A3セルに一式の金額として合計金額を直接入力したいのですが、直接入力をした時点でA3セルの計算式は消えてしまいます。しかし、A1セルの「空白」を「1000」に変更したと同時に、A3セルの計算式が復活して計算結果を表示する。 マクロを使わない方法でこのような方法を実現することは不可能でしょうか? 質問にA3セルの計算式が復活、と書いていますが、実際は計算式をセルに入力するのではなく、見えないところ(入力規則のような機能)に登録しておくといった方法があるかどうかになると思います。 以上、方法がありましたら回答よろしくお願いします。

  • 任意のセルに小計、合計と入力したら自動計算してくれ

    エクセル2007でVBAを何度も挫折しています 任意のセルに小計、合計と入力したら自動計算してくれるVBAの方法を教えてください セル G21 商品名 L21 詳細 V21 数量 X21 単位 Z21 単価 AD21 金額(V21:数量*Z21:単価) の何処にでもある見積書なのですが 任意のG行に小計・合計と入力すると AD行に金額が自動で入力させるVBAの仕方が知りたいです。 3行ほどの見積もあれば100行を超える見積もあります 教えてください。

  • エクセルで入力文字のチェック

    エクセルのセルに入力された値がUnicodeで****から****までの範囲内のみの文字で記述されているかのチェックをしたいのですが、 例:B3には電話番号を入力したいので半角数字と()のみで構成されているかをチェックする。 VBAでどのように記述すればよいのでしょうか? もう一つ、 セルB3に文字を入力し終えた時または、B3にあるカーソルを他のセルに動かした時に VBAが走る…と言う記述方法はあるのでしょうか? ボタンを用意し、入力後[CHECK]を押すとVBAが動くと言うのは出来るのですが… 以上よろしくお願いいたします。

  • Excelのセルを入力できないようにしたいのですが・・・。

    Excelのあるセルを指定して、そのセルに何も入力できないようにしたいのです。 「データ-入力規制-全ての値」をチェックしてみたのですが、それではダメでした。 方法をご存知の方、教えてください!

  • セルの入力を制限する

    エクセルのセルA1に入力がない場合、A2~A10の範囲のセルを入力できないようにする。 といった感じのVBAのマクロを作成したいのですがどのような方法があるのでしょうか?

  • 入力した合計数値を振り分けたい

    関数とかマクロなど理解していない初心者でエクセル2003を使用しいます。 例えば 1Aのセルに1~10個(単価50円)と入力済 2Aのセルに11~20個(単価40円)と入力済 3Aのセルに21~30個(単価30円)と入力済 1B~3Bのセルに個数欄未入力 1C~3Cのセルに金額自動計算式入力済 4Bのセルに合計個数欄未入力 4Cのセルに合計金額自動計算式入力済 とした場合、例えば4Bの合計個数に29個と入力すると、自動的に1Bに10個、2Bに10個、3Bに9個と個数が振り分けられる様にしたいのですが、できるのでしょうか?

  • 入力規制で入力されたセルの客名と、同じ客名のシートへ保管してゆくには?

    初めて質問させて頂きます。Excel 2003 で困り果ててます。 入力用のシートを作って、他のシートへマクロコピーさせる所で完全に立ち止まっています。 初めからやり直しても構わないのでどなたか教えてください。 当方PCには慣れているつもりですが、office VBAは少しさわり始めた程度です。 製造会社のシステムで、各担当者が、客名(15件固定)、製造寸法、 単価、金額、総金額、その他様々な情報(20列程度)を注文ごとに 入力用シートに入れてゆきます。 各シート名・・入力用、作成書、請求一覧用、客A、客B・・客O(15件固定) 1.入力用シートのC4セルに客名/入力規制(リスト)=シート名と同じ 2.入力用シートは転記させたら消す 3.入力用シートの行数は注文の都度変わる 4.作成書シートへはA7~N7列以下の入力されている行数分コピー 5.請求一覧用シートへはB4/C4/E4/F4/C7/E7/Q7/K4/N4/P4 の固定セルの値だけ追記させてゆきたい 6.客A~OへはA4~S4列以下の入力されている行数分、客名シートに振り分けて追記させてゆきたい 上記の条件で4.5.6. の操作を個々にボタンで操作できるようにするには どのようにすれば良いでしょうか? 4の操作後印刷したらデータは消します。5.6.は上に上にデータ挿入出来ると良いです。 標準モジュールまで入力できたら、後のボタン作成はできます。 不慣れな質問ですが、どうぞ宜しくお願い致します。

  • 時間をvbaでセルに1:00と入力する場合

    セルにvbaで時間として、1:00と入れたいのですが、 Range("A2") = #1:00# とすると、自動で Range("A2") = #1:00:00 AM# になってしまい、実際にセルにも「1:00:00 AM」と入力されてしまいます。 そもそもvba上で時間をコードとして打つ場合は、#で囲うでいいんですよね? 時間をvbaでセルに1:00と入力する場合は、どうすればいいですか?

  • Excelでセルに入力するとVBA関数が呼び出される

    標記件、あるExcelファイルでセルに入力を行うと、入力後にVBAのある関数が自動で呼び出されるのですが、どこでこの設定を行う事ができるのでしょうか? VBAをOPENし、"ThisWorkbook"と"Sheet"内を開いても、何も記述はありません。通常はここで設定を行うと思うのですが・・・ (SelectionChangeなどで。) なお、呼び出される関数は、標準モジュール内に入っています。 以上、よろしくお願い致します。

  • excelで次のようなことをチェックできますか?

    excelで次のようなことをチェックできますか? もし、合致していれば(真であれば)決められた得点を表示する というようなことです。 1.A3セルに入力した文字列が中央ぞろえされている。 2.A4に入力したデータは、’0120といように数字が文字列化されている。 3.B4セルには「セルポインタ」という文字列が入力されている。 3.A5セルに入力されている数式が=sum(b5:b11)である。値ではチェックしない。 4.A6セルに表示されている値が1234である(数式で表示)。 5.A7セルにrankで表示した値が 北海道 である。