• 締切済み

初歩的ですみません。データベースと関数について教えてください。

初歩的ですみませんが教えてください。 Microsoft Offise Excel 2007 を使用しております。 データベースとしてsheet1のB列に出発地、D列に目的地、E列に電車賃、F列にバス代がある程度打ち込んであります。 sheet2は交通費清算表で出発地のセルと目的地のセルに文字を打ち込んだ時に、合致した区間の電車賃とバス代の金額を表示させたいのですが各々のセルに入力すべき関数式を教えていただけないでしょうか? sheet2で使用する列も同じです。 B10=出発地、D10=目的地、E10=電車賃、F10=バス代としてお願いいたします。 よろしくお願いいたします。

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シート1では1行目に項目名があり、2行目からデータがあるとします。 なお、列はお示しの通りとします。 シート2でE10セルには次の式を入力してF10セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグしてはどうでしょう。 =IF(OR($B10="",$D10=""),"",SUMPRODUCT((Sheet1!$B$2:$B$1000=$B10)*(Sheet1!$D$2:$D$1000=$D10)*Sheet1!E$2:E$1000))

ts_dmj
質問者

お礼

早速ありがとうございます。 やってみます!!! (*^_^*)

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 関数でできるでしょうか?

    エクセルの関数で次のようなことができるでしょうか?  A  B  C D  E  F G H 1 26                   ←年齢 2 20 21 22 23 24 25 26 27  ←年齢表 3 25 25 28 29 30 33 33 36  ←金額 A1セルを見て、2行目から合致する年齢の列を見つけて、3行目のA列から合致した年齢の列(この例の場合G列)までを足算(この場合203)したいのですが関数だけでできますでしょうか? すいませんが、よろしくお願いします。

  • エクセル関数でちょっと悩んでます。

    エクセル関数でちょっと悩んでます。 sheet1にセルB4、C4、D4、B5、C5、D5(グループ1)とI4、J4、K4、I5、J5、K5(グループ2)にデータが入っているとします。 sheet2のB3、C3、D3、E3、F3、G3にグループ1のデータを記入します。 B4、C4、D4、E4、F4、G4にはグループ2を入れたいのですが、sheet1からみて列7つ移動したものとして記入したいです。どうやればいいですか? 例えば、sheet2のB3には、=Sheet1!B4を入れれば反映されます。 sheet2のB4にはsheet1のI4を入れたいのですが、sheet1からみて列7つ移動した形でエクセル関数を使って表現したいのです。どうやればいいですか? =Sheet1!B4+?

  • エクセル関数2

    シート(1) A B C D 作業列    コード    顧客名     金額 3        300001     A 10,000 3        300002   B 15,000 3        300003   C 20,000 3        300004   D 25,000 3        300005   E 30,000 4        400001   F 35,000 4        400002   G 40,000  4 400003 H 45,000 4 400004 I 50,000 4 400005 J 55,000         シート(2) A B C D E F 「1」 「2」 「3」 「4」 「5」 「6」 10,000 35,000 15,000 40,000 20,000 45,000 25,000 50,000 30,000 55,000 ※ シート(1)にコード、顧客名、金額を入力すると、シート(2)にあるように該当するコードの先頭行の列に表示するようにしたいと思っています。 シート1で作業列を作りその作業列を基にシート2でVLOOKUP関数を使い‥シート2の10,000のセルの場合、 VLOOKUP(C$2,sheet1!$A$3,$D$12,4,false)として、下にコピーすると同じ金額になってしまいます。 セルが空白にならず、シート1の金額が上から順番にシート2に表記されるようにするにはどうしたらよいでしょうか。マクロはできませんので、関数で詳しく教えて下さい。宜しくお願いします。

  • EXCEL エクセル 関数を使用して距離を求めたいが…

    エクセル2003を用いて出発地を入力すれば、出発地~各目的地までの 運搬距離が出る式を作成しようと思いましたが、上手く出来ません。 例: ・ワークシート1(WS1)  1行目に出発地(B1:東・C1:南・D1:西・E1:北)  A列に目的地(A2:学校・A3:図書館・A4:公園)  B2~E4に出発地から目的地までの距離(km)を記入 ・ワークシート2(WS2)  A1:出発地を入力「東or南or西or北」  A2~A4:ワークシート1のA2~A4を貼付(学校・図書館・公園) この場合、例えばWS2のA1出発地に「南」を入れた時、WS1で入力した距離を WS2のB2~B4に反映させるにはどの様にしたら良いでしょうか? 宜しくお願いします。

  • 検索値を表示させる関数

    教えてください。  製品の構成シートですが、元データがばらばらでまとめるのに困ってます。 シートB    AW    AY    AZ     BB     BC    BE    4  種類   使用数1  種類   使用数2  種類   使用数3 5  船      2     電車     1    飛行機    2 6  車      3     船      0     電車     1 7  電車    0     飛行機    0     船      2 8  飛行機   1     車       1     車      3 シートA    A     B      C         D       E       F 2  種類   場所  合計使用数   使用数1   使用数2   使用数3 3  車    道路     6         3        1       3  4  電車   線路    2         0         1       1 5  飛行機  空     3         1         0       2 6  船     海     4         2         0       2  シートBでのAY、BB,BEでの使用数をシートAの列D,E、Fに表示させたい  のですが、どのような関数をシートAのD3、E4、F5のセルに入れれば表示  しますか?  もう一つありますが、シートAからの検索です。     シートC             D    E    F             1  コード  名称  略名   2  (1)    青    b  3  (2)    赤     j  4  (3)    黄     f  5  (7)    黒    q      シートD     B            K  1  コード        略名  2  (7)           q  3  (3)           f  4  (1)           b シートCの略名をシートDに検索し、表示させたいのですが、 シートDのK2セルにはVLOOKUPをどのようにつかえばよいのですか? 3000点位の検索があります。  

  • エクセル関数の質問です。

    エクセルでセルA1=4の場合セルB2=セルD1、セルA1=5の場合セルB2=セルE1、セルA1=6の場合セルB2=セルF1というように、セルA1に数字を入力するとセルB2に反映するようなセルB2に入力する関数を教えて下さい。  セルA1には月(4月から3月)の数字(4~12、1~3)が入り、4月のときにはD列(D1)、5月のときにはE列(E1)、6月~3月にはF列(F1)~O列(O1)の数字が入ります。よろしくお願い致します。

  • INDIRECT関数が上手く使えません。

    集計シートF334セルに、「=SUMIF(貼付!E$2:E$300,A334,貼付!K$2:K$300)」と 入力して、貼付シートのE2:E300の範囲から、集計シートA334の値を探して、 貼付シートのK2:K300の値を合計して、集計シートF334セルに表示させています。 集計シートF338セルに「K」と入れて、集計シートI338セルに「=F338&2&":"&F338&300」と 入力して、集計シートI338に「K2:K300」と表示させています。 貼付シートで必要な列が、K列からJ列・H列など月ごとに変わるため、 INDIRECT関数を使用して、集計シートF338セルに入力した値から集計シートF334セルの 値を更新しようと思っています。 そこで、集計シートF334セルの値を次のように変更しましたが、求めている結果が得られません。 0と表示されます。どこが誤っているのか、教えていただけないでしょうか。 「=SUMIF(貼付!E$2:E$300,集計!A334,INDIRECT("集計!"&I$338))」

  • エクセル関数

    エクセル初心者につき、質問させていただきます。 集計(抽出でしょうか)に関し シートAには A列に個々の件番(数値6桁です)があります 同一件番が複数あったり、一つだけだったりと 不規則です。 B列にA列の件番に対しての項目(文字列)があります  A列    B列 100001   電車 100001   バス 100001   徒歩 100003   徒歩 100006   電車 100006   バス これらのデータをシートBにて A列に6桁の数値を入力したら B・C・D列に以下の通り反映されるように したいのですがうまくいきません  A列    B列   C列   D列 100001   電車   バス   徒歩 100003              徒歩 100006   電車   バス 適した関数を御教え頂ければありがたくお願いいたします。

  • EXCEL2000 関数の使い方

    EXCEL2000 関数の使い方についておしえてください。 (状況) 1)シート1(請求書)とシート2(名簿)があります。 シート2は 列A 列B 列C    列D No 氏名 生年月日  年齢 1 A子 H11.11.1  7 2 B男 H13.8.18  5 ..と続いています。 2)シート1のセルB3(宛名欄)にシート2の名簿の中からB列「氏名」(「氏名」という名前で定義つけてあります)をリスト表示しています。 3)セルB3にリストから選択した人物の年齢をシート2から探して年齢(列D)をシート1のセルC32に表示させたいのですが、どのような数式になるでしょうか? VLOOKUP関数を使うのかな?と思ったのですが、シートが分かれていたり、リストとの合致の定義付けがよくわかりません。 検索個所:シート1のセルB3とシート2B列の一致した値 検索範囲:シート2のB1からD35(データという名前で定義付けています) 表示させたいセル個所:シート1のC32 数式の使い方など認識がまちがっていたり、わかりにくい説明になっているかもしれませんが、どうぞよろしくお願いします。

  • 初歩的な関数なのですが、教えてください。

     A列 B列 C列 D列 E列 1               鶴    2 あ  鶴  あ 3 い  亀   4 う   5    鶴 6 う 7 え  鶴  え 8    亀 9 E1のセルに「鶴」(任意の文字)をいれます。 A列に文字が入っていて、かつ、B列の文字=E1の文字(鶴)ならA列の文字をC列に返す。 A列に文字が入っているが、B列の文字がE1の文字と異なる(亀)ならC列は空白。 A列に文字が入っているが、B列の文字が空白ならC列は空白。 A列が空白なら、B列に鶴、亀、その他の文字が入っていても空白。 A列、B列ともに空白なら、C列も空白 上記を可能にする関数がわかりません。 IF関数を使うのだと思うのですが。 エクセルの2003です。よろしくおねがいします。

専門家に質問してみよう