【最大10000ポイント】当たる!!質問投稿キャンペーン!

初めて投稿させて頂きます。

現在、Excel2003を使用し簡単な経費・収支管理表を
作成しようとしています。

その際に、入力の手間や計算間違いを
避けるためにプルダウンリストを作成し、
そのリストの各項目に数値を関連付け、
自動計算をする際に、セルには文字を表示したまま
その関連付けた値を計算して計を出したいのですが、
やり方をご存知な方がおりましたら教えて頂けないでしょうか?

やりたい事としては、まず入力規則等で作成した
下記の商品プルダウンリストが有るとします。
----------------
■商品リスト
[商品名]
みかん
りんご
イチゴ
すいか
めろん
----------------

その各商品へ価格を関連付け
----------------
■リスト
[商品名] [価格]
みかん  100
りんご  150
イチゴ  260
すいか  420
めろん  540
----------------

エクセルで表示する際に、
以下の様にしたいです。
----------------
[商品名] [個数] [計]
みかん▼  2   \200
りんご▼  1   \150
イチゴ▼  3   \780
すいか▼  1   \420
めろん▼  0   \0
----------------

よろしくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

>項目名の裏で値を設定できるような感じです。



プルダウンリストの作成は、入力規則で設定出来ます。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/n-kis …

ここで選択した値と何かをリンクさせるには、先にお答えしたようにVLOOKUP等の関数で行う必要があります。

>できれば単価の値は表示したくなく、

別のセルに式を埋め込むか単価欄に全ての式を埋め込む事になります。
余計な表示をしないようにするには、IF文等で工夫する必要があります。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu …


=IF([商品名]="" ,0,VLOOKUP(式・・・・) * [個数])
    • good
    • 4
この回答へのお礼

ご回答ありがとうございました。
お教えて頂いた構文やサイトを参考何とか完成いたしました。

htmlのプルダウンの先入観から勘違いをして、
[商品名]のセルでVLOOKUPを使用した式を使用していました。
合計を出すセルで使用しなければいけなかったのですね。
Excelに不慣れなもので要領の得ない質問で申し訳ございませんでした。

本当に助かりました。
ありがとうございました。

お礼日時:2007/11/08 15:26

ひょってして、この表を「見積書」としてエクセルファイルのまま客先へ渡したいが、


数式のままだと、単価リストも一緒に渡すことになるので、それは避けたい。
金額欄は単に「数量×単価」という単純な計算式ではないので、逆算しても単価はバレない。
もしそうなら、質問自体の書き方が間違っています。
もし、単価表を渡したくないのであれば、この結果をコピーして、
別のブックに「形式を選択して貼り付け」-「値」で貼り付ければ、計算結果が数値として貼り付けられます。
    • good
    • 2

>単価の値は表示したくなく、単価を非表示のまま、見た目的には


【 商品名 × 個数 = 計 】の様にしたいのです。
--
既回答はそういう線で回答されていると思います.
A1ープルダウンで「みかん」を選択
A1の値が「みかん」になる
A1の値を使って=VLOOKUP(A1、$D$1:$e$100,2、FALSE)
で、D列みかんなどの品物、E列単価の表から、単価が取れます
B1に数量を入れると、C1に設定した
=B1*VLOOKUP(A1,$D$1:$e$100,2,FALSE)
で単価*数量が計算されます。
--
何が聞きたいのかな。
C1の式は前もって入れておく場合が多いがエラー表示が出て見苦しい場合は
=IF(OR(A1="",B1=""),"",B1*VLOOKUP(A1,$D$1:$E$100,2,FALSE))
    • good
    • 2

重複する名前の商品が無ければVLOOKUPで単価を得る事ができます。



合計額だけで良いなら、合計欄に
=VLOOKUP(式・・・・) * [個数]
というような式を入れて置けば良いでしょう。

http://www.excel.studio-kazu.jp/lib/e1tw/e1tw.html

この回答への補足

ありがとうございます。
上記試してみました。

単価の値を得ることは出来たのですが、
少々やりたい事と違っており、
できれば単価の値は表示したくなく、
単価を非表示のまま、見た目的には
【 商品名 × 個数 = 計 】
の様にしたいのです。
また、商品名をプルダウンで選択できる様にしたいのですが....

htmlのプルダウンメニューの様な物を作成する方法を探しています。
項目名の裏で値を設定できるような感じです。

説明不足で申し訳ございませんでした。
参考になる様な物が有りましたら
またお教え頂けたらと思います。

よろしくお願い致します。

補足日時:2007/11/07 17:39
    • good
    • 1

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QEXCELの機能の事で…初歩的でスミマセン

きっと探せば以前にも質問があると思うのでうが…
何を探せばいいのか分からず…
分かりやすく教えて頂けると助かります<m(__)m>

EXCELで日々入力する日報のようなものを作っています。
(職場はEXCEL2000です)
例えば…
飲食業なのですが、一つのセルに30品あるお料理の中から例えばご注文が『オレンジジュース』と入力するとします。
その都度、そのセルに『オレンジジュース』と入力するのではなく、入力セルの端のほうに▼(下矢印)のようなアイコンがあって、そこをクリックすると前もって登録した30品目がずらっと並び、そこから『オレンジジュース』をクリックするとそのセルに入力される…
と言うような事は出来ないでしょうか??

又、もし可能であればその『オレンジジュース』を選択したことにより、単価を入れるセルに『300』と単価が自動的に入力されるなど…。

そんな都合のいい事はできませんでしょうか?
説明が下手で本当にごめんなさい。
素人が3人で、あの手この手で半日頑張りましたが…ダメでした。
お力をお貸しください。

きっと探せば以前にも質問があると思うのでうが…
何を探せばいいのか分からず…
分かりやすく教えて頂けると助かります<m(__)m>

EXCELで日々入力する日報のようなものを作っています。
(職場はEXCEL2000です)
例えば…
飲食業なのですが、一つのセルに30品あるお料理の中から例えばご注文が『オレンジジュース』と入力するとします。
その都度、そのセルに『オレンジジュース』と入力するのではなく、入力セルの端のほうに▼(下矢印)のようなアイコンがあって、そこをクリックすると前もって登録した30...続きを読む

Aベストアンサー

データの入力規則と、VLOOKUP関数でできます。

A列に品目を、B列に値段を入力するとします。
(1)まず前準備として、C列に品目すべてを、D列にそれぞれの値段を書き込んでおきます。
(2)A列を選択し、メニューの「データ→入力規則」
(3)設定タブの「入力値の種類」を「リスト」に、「元の値」をC列に設定します。
これだけで、A列にカーソルを移動すると右に▼マークが表示され、それをクリックすると品目リストが表示されます。

関数はB1に
=VLOOKUP(A5,C:D,2,FALSE)
と入力し、必要なだけ下にコピーします。A列に入力された品目に応じた値段が表示されます。

Qプルダウンで選択すると隣のセルに自動で入力される方法

プルダウンで選択すると隣のセルに自動で入力される方法
エクセル2003でシート1に「会社名」と「住所」を一覧を作成。シート2でプルダウンで「会社名」を選択すると隣のセルに自動で「住所」が出るようにしたいのですが、何か良い方法(関数)はありますか。教えてください。宜しくお願いいたします。

Aベストアンサー

プルダウンで確定した値を使ってVLOOKUPで検索したら。

例えば、Sheet1のA1~B10に会社名と住所の一覧があって、
Sheet2のA1でプルダウンで会社名を選択した場合、
B2を
=VLOOKUP(A1,Sheet1!A1:B10,2,FALSE)
とすれば、会社名に対応した住所が表示されます。

Qエクセルのプルダウン リストごとの集計

はじめまして!
検索したのですが見つからなかったので教えてください。

エクセルで家計簿をつけています。
プルダウンリストに、食費・交通費・衣料...などと出てくるようにしたら
すごく便利だなぁと思ったのですが、リストごとの集計はできますか?
列で言うと、左から

日付 プルダウン1 金額 プルダウン2 金額 ... 日計

にして、空いてるところに項目ごとの集計もしたいのです!
教えてください!!!

Aベストアンサー

プルダウンリストの作り方はNo1さんの説明通りです。

集計はSUMIF関数が宜しいかと思います。
 =SUMIF(金額範囲,検索条件,金額範囲)
 【例】食費を集計する。
    ※日付がA列、項目がB列、金額がC列で、
     2行目~10行目に記録されている場合
       =SUMIF(B2:B10,"食費",C2:C10)

如何でしょうか?

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qexcel入力規則リストに計算式を複数設定したい

皆様のご教授をお願いいたします。

excelの入力規則のリストに複数の計算式を設定し、ドロップダウンリストから計算式を選択すればそれぞれの計算式に対応した計算結果が表示されるようにしたいのですが、リストの元の値に計算式を入力してもエラーが出てしまいます。

どうすれば設定できるでしょうか?
それとも別のやり方があるのでしょうか?



設定したい計算式
=ROUNDUP(Q210*B282,0)
=ROUNDUP(S210*B282,0)

ちなみに、文字列のように

=ROUNDUP(Q210*B282,0),=ROUNDUP(S210*B282,0)

と入力してもダメでした。

皆様の知恵をお貸しください。宜しくお願い致します。

Aベストアンサー

入力規則のリストに計算式を設定する事は、全く出来ません。

入力規則(仮にZ列)ではたとえばAとBから選択できるように仕込んでおき、その隣のセルで
=IF(Z210="","",IF(Z210="A",ROUNDUP(Q210*B282,0),ROUNDUP(S210*B282,0)))
などのようにして、AとBの指定に対応する計算結果を表示するといった具合に仕込んでみて下さい。

Q(Excel)あるセルに文字を入力しただけで、同じブック内のほかのワークシートにも、同じ文字が自動的に入るようにするには?

こんにちは。
質問内容はタイトルのとおりです。

あるワークシートのあるセルに文字を入力すると、ほかのワークシートのセルにも同じ文字が自動的に書き込まれる方法を知りたいです(ブックは同じ)。複数のワークシートを制御するには、やはりマクロを使うのでしょうか?

よろしくお願いします。

Aベストアンサー

clam_chowderさん、こんにちは。

Sheet1のA1にたとえば「100」と入力しますね。
Sheet2のA1に、これと同じ数値を表示するには、
 =Sheet1!A1
でOKです。

数式をいれるのが苦手なら、
Sheet2のA1セルで「=」を入力すると、数式入力状態に入りますから、
ここでSheet1のシートタブをクリックし、
リンクしたいA1セルをクリックしてEnterすると、
自動的にさきほどと同じ式が入ります。

QExcel入力規則とVLOOKUPの組み合わせ

以下のようなことができますでしょうか。

・A1セルにはリスト(別途リストを作成しておいて)から選択させる。
・B1セルはA1を見てVLOOKUPで対応する値を返す

例えば
Aさん 東京都
Bさん 静岡県
Cさん 北海道

というリストを作って、
A1セルで Cさんをリストで選んだと同時にB1セルに北海道と表示させる
というイメージです。
何かいい方法がありましたら教えてください。宜しくお願い致します。

Aベストアンサー

Sheet2で
_A____B____
1 氏名   都道府県
2 Aさん  東京都
3 Bさん  静岡県
4 Cさん  北海道
の表を作り、
A列の範囲を「挿入」「名前」「定義」で「氏名」と名付ける。
A:B列の範囲を「挿入」「名前」「定義」で「データ」と名付ける。
Sheet1でリストから選択するA1に「データ」「入力規則」で
入力値の種類を「リスト」、元の値を「=氏名」とする。
B1=IF(A1="","",VLOOKUP(A1,データ,2,FALSE))
と入力。こうすれば別のシートの値でも参照できます。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

QExcelの入力規則で2列表示したい

入力規則を使って、社員コードを入力する際に
10001 山田太郎
10002 鈴木花子
10003 佐藤大介
のように、ドロップダウンリストに「社員コード」「社員名」と2列表示させたいのです。
そして、例えば山田太郎を選択すると、セルには「10001」だけが入力されるようにしたいのですが・・・
(Accessのルックアップフィールドみたいな感じ)

[入力規則]-[リスト]で、社員コード表を選択しても、単一の列または行でなければいけませんとエラーが出ます。
かといって[入力規則]-[リスト]で範囲指定をカンマ区切りで
10001 山田太郎,10002 鈴木花子,・・・と入力しても、エラーは出ませんがドロップダウンリストから選択したときに社員コード表と社員名が一緒にセルに入力されてしまいます。

なにか良い方法はありませんでしょうか?
よろしくお願いいたします。

Aベストアンサー

番号と社員名の間にスペースが入っているなら
メニューバーから「データ」→「区切り位置」で
1「カンマやタブなど---」にチェックを入れて「次へ」
2「区切り文字」で「スペース」にチェックを入れて「次へ」
3「完了」
で番号と社員名が違う列へ分けることが出来ます。
番号のデータがA2からA4、社員名がB2からB4にあるとし
C1にリストを設定して番号を入れ、D1に社員名が反映するようにするときにはD1に
=INDEX(A2:A4,MATCH(C1,B2:B4))
と入れてやるとうまくいくと思います。

Qエクセルのセルにカレンダーを表示させ、日付をセルに入力させたい

エクセルについて教えて下さい。

エクセルのセルをクリックすると、
カレンダーのようなものが表示され、
マウスで選択すると、
セルに日付が入力されるようにするには
どうしたらよいですか?

すみませんが、宜しくお願い致します。

Aベストアンサー

#02です。foo-mさんがVBAをお使いになるなら、以下のサンプルをいじってみてください。

このサンプルはC4セルがクリックされたときにカレンダーコントロールを表示して、日付を選んだらその日付をC4に書き込み、カレンダーコントロールを閉じるマクロです。

Private Sub Calendar1_Click()
Selection.Value = Calendar1.Value
ActiveSheet.Calendar1.Visible = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$C$4" Then
ActiveSheet.Calendar1.Visible = True
End If
End Sub

マクロはシートのモジュールとしてペーストして下さいね


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング