• 締切済み

エクセル関数について

エクセルの関数について質問です。 セルに入力されている文字によって、 計算式を自動で変えるにはどのような数式を入れればいいでしょうか。 例えば、 品目・グラム(緑のセル)に リンゴ・100gと入力すると、栄養素(オレンジのセル)が自動計算されるような式です。 画像の品目は3種類しかないですが、作りたい資料には品目がたくさんあるので 量が多くても対応できる式を教えてください。 宜しくお願い致します。

みんなの回答

  • 178-tall
  • ベストアンサー率43% (762/1732)
回答No.7

< ANo.6 >セル C10 に、 > =INDEX($C$5:$C$7,MATCH($B$10,$B$5:$B$7,0))*INDEX(I$10:I$12,MATCH($B10,$H$10:$H$12,0)) >を入れ …      ↓ 錯誤訂正  =INDEX($C$5:$C$7,MATCH($B10,$B$5:$B$7,0))*INDEX(I$10:I$12,MATCH($B10,$H$10:$H$12,0))   

全文を見る
すると、全ての回答が全文表示されます。
  • 178-tall
  • ベストアンサー率43% (762/1732)
回答No.6

添付画像のシート設定で、B10 ~ B12 に品目を入力したとき、その品目について、  C5 ~ C7 に入っているグラム値を拾い、I11 ~ L12 から割合を拾って乗算・表示する例…。 セル C10 に、  =INDEX($C$5:$C$7,MATCH($B$10,$B$5:$B$7,0))*INDEX(I$10:I$12,MATCH($B10,$H$10:$H$12,0)) を入れたあと、その写しを C10 ~ F12 に貼り付ける。   

全文を見る
すると、全ての回答が全文表示されます。
  • 178-tall
  • ベストアンサー率43% (762/1732)
回答No.5

シート設定は添付画像のとおり、かつシート関数使用で、となるとすごく複雑になりそう。 シート設計からの演習問題なら、よりスマートに処理できそうです。 鍛錬用・演習問題なので、とにかくデッチあげなきゃアカンのでしょうか…。   

全文を見る
すると、全ての回答が全文表示されます。
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.4

>品目・グラム(緑のセル)にリンゴ・100gと入力すると、栄養素(オレンジのセル)が自動計算されるような式です。 画像が読み取れないのでどのような結果を期待しているのかを推測できません。 従って、具体的な数式を提示できません。 リンゴ100gの栄養素はビタミン、ミネラル、たんぱく質、糖質(?)がどの程度含まれるかを算出できれば良いと推測しますが、H8:L12の表に記載されている値が%単位のように見えます。(値が読めない) B4:C7の表についても読み難く、判断に苦慮します。 緑のセルには実際の値を入力して頂くことと、オレンジのセルには計算結果の値(電卓で計算した結果)を提示して頂ければ具体的な数式を組み立てることができます。

全文を見る
すると、全ての回答が全文表示されます。
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 前提条件として、左上の表の品目欄に入力されている「リンゴ」、「バナナ」、「ブドウ」等の品目名には、例えば「リンゴ」が2箇所のセルに入力されているといった様な、重複して入力されているものは存在しないものとします。  その場合、まず、B10セルに次の様な関数を入力して下さい。 =IF(B9="","",IF(ISERROR(1/(VLOOKUP("*?",INDEX($B$4:$B$7,MATCH(B9,$B$4:$B$7,0)+1):$B$7,1,FALSE)<>"")),"",VLOOKUP("*?",INDEX($B$4:$B$7,MATCH(B9,$B$4:$B$7,0)+1):$B$7,1,FALSE)))  次に、C10セルに次の様な関数を入力して下さい。 =IF($B10="","",IF(AND(ISNUMBER(VLOOKUP($B10,$B$5:$C$7,2,FALSE)),ISNUMBER(INDEX($I$10:$L$12,MATCH($B10,$H$10:$H$12,0),COLUMNS($C10:C10)))),VLOOKUP($B10,$B$5:$C$7,2,FALSE)*INDEX($I$10:$L$12,MATCH($B10,$H$10:$H$12,0),COLUMNS($C10:C10)),"データ無し"))  次に、C10セルをコピーして、D10~F10のセル範囲に貼り付けて下さい。  次に、B10~F10のセル範囲をコピーして、C列~F列の11行目以下に貼り付けて下さい。  以上です。

全文を見る
すると、全ての回答が全文表示されます。
  • msMike
  • ベストアンサー率20% (363/1775)
回答No.2

C11: =IFERROR(VLOOKUP(LEFT($B11,FIND("・",$B11)-1),$H$11:$L$13,COLUMN(B2),FALSE),"")

全文を見る
すると、全ての回答が全文表示されます。
  • kuma56
  • ベストアンサー率31% (1423/4528)
回答No.1
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルの関数(論理式)

    A1にりんご、B1にapple A2にみかん、B2にorange A3にバナナ、B3にbanana と入力されています。 D1にりんごジュース D2にりんごゼリー D3にりんご と入力されています。 D行に”りんご”を含むセルがある場合は、その真横のE行のセルに すべてappleと表示させるには、E行にどのような関数を入力すればよいですか? 数式内に文字列("*りんご*")は使わずに、セル参照だけで関数を作りたいと思っています。 どなたか教えてください。 宜しくお願い致します。

  • Excelの関数について

    仕事でExcelを使った資料を作成しています。 例 1.りんご 20個 2.ばなな 50個 3.すいか 5個 このように、品目に個数を入力していく資料を作成しているのですが、たとえば入力した個数が20個以上なら入力した数値の2倍を返し、20個以下なら入力した数値の半分を返す、といった関数は作成できるものでしょうか? どうぞ知恵をお貸し下さい。

  • EXCELの関数について

    いつも大変お世話になっております。 今回はEXCELの関数についてご存知の方いらっしゃいましたら、ご教授頂けたらと思います。 添付の画像を見て頂けたらと思いますが、 A列に計算の元となる数字を入力し、 2行目に計算したい計算式を入れると、 その結果を自動的に算出するようにしたいのですが、 緑色のセル(B3~D5)を再現してくれる関数はあるでしょうか? 仕様:Excel2013 どうぞよろしくお願い致します。

  • excelで関数が入力できないのですが・・・

    質問があるんですが、excel2003でセルに関数を入力しようとしたら 「入力した数式は正しくありません」って表示が出て 関数が入力できません。ただし、シートのすぐ上にあるfx(関数の挿入) からだと入力できます。数式自体は間違ってないのになぜなんでしょうか? 2000だったら入力できるんですが・・・ しょうがないので今は、openofficeってソフトにある表計算を 使っているんですが、それも入力できます。 excel2003だけ入力できないのはなぜ!?

  • エクセル関数について

    セルA24~A150の数値が隣同士のB24~B150の数値と比べてBのセルの値が大きい場合はBのセルを赤色に、小さければ黒色になるような関数式ができるでしょうか?ただしBのセルには数式が入っています。(Bのセルの数式=AVERAGE($A1:$A24)+STDEVP(A1:A24)*3) 出来るなら入力式を教えてください。簡単なマクロでもかまいません。

  • エクセルで挿入した列に関数が値を返しません。

     エクセルで列を挿入したセルに、関数を入力しても値を返しません。 関数を入力しても、数式バーに表示される数式がセルに表示されるだけで、答えは出ません。式はあっていて、違うセルに数式をコピーして張り付けると、値を返します。  また、挿入した列に元からある空白の列をコピーして貼り付け、関数を入力しても値を返します。  どこかで変な設定をしてしまったのでしょうか?  分かる方、どうか教えてください。

  • エクセル 関数 2008_12_12

    エクセル関数に詳しい方、教えてください。 どのセルに、どうゆう関数を入れればいいか教えていただきたいです。 1、A1に直接入力されていたら、A2を関数式計算させる(入力済み)  A2に関数式を無視して直接入力したら、A1は空白になる。  A2が空白なら、A1も空白。 2、あるセルに数値が無ければ(空白)、その列を非表示にする関数式。 3、これは関数ではないですが、マクロを使用してないのにセキュリテ ィー警告(開いたときに出るやつ)が出てくるので出ないようにした い。*セキュリティーレベルを下げないやり方。 以上、分かる方教えてください。

  • エクセル 関数を固定したい

    毎日の給与計算でエクセルを使用しています。 関数を使用し、勤務時間などを入れると自動で計算、また何時間以上したらボーナス、交通費がつく等、細かい設定を多々入力しています。 よく誤って、セルの移動、行挿入、削除等してしまい、関数(数式)がめちゃくちゃになってしまいます。 また複数の人が扱う為、できれば関数自体を動かせないように(式を変更できないように?)したいのですが、何か方法はありますでしょうか? 初歩的な質問ですみません。宜しくお願いします。 例)以下のような感じです。  日付  時間 金額 交通費 ボーナス 合計    A    B    C    D     E    F   ・・・ 1 1/10   3   2100    0     0    2100   2 1/11   6   4200   500     0    4700 3 1/15   2   1400    0    1000    2400 4   計    11   7700    500    1000    9200 ・ ・ ※1日の勤務時間が5H以上で、交通費¥500 ※一週間の勤務時間が10H以上でボーナス¥1000 ※それぞれC~F列、4行目は関数(数式?)が入力され、自動で計算されます。 なので、ここを固定したいです。 ただ、月によって、行を増やしたり、減らしたりするので(ボーナス列が二列できたり・・・)、その際には、関数も変更しなければいけません。

  • エクセルの関数について

    こんにちは エクセルを使ってあるものの集計をしました。 H13というシートの中で、Cの列が「リンゴ」で、 なおかつDの列が「陽光」であるセルの数がいくつあるか? と言う関数を作りました。  {=SUM(IF('H13'!C1:C300="りんご",IF('H13'!D1:D300="陽光"1,0)))} 一応これで数は返されたのですが、 この間数をコピーしてH14にしようとしてセルをいじくると、 最初と最後の{}が勝手に消えてしまい、それでも数式としてはあっているようで、 実際返ってきて欲しい数ではなく、0が返ってきます。 で、{}をつけてみると、今度はそのまま式が表示されます。 そもそもこの式が一番最適なのかも教えていただきたいのですが、 なぜ{}が消えてしまうのか?どうしたらよいのかを教えてください。 よろしくお願いします。

  • エクセルの関数で2

    エクセルの表で、関数を使って、自動で入力したいのですが、条件が複数の場合の方法を教えて下さい。 例えば、セルA1に日本と入力した場合は、B1に1,同じA1に韓国と入力した場合は、同じB1に2、A1に中国と入力した場合は、B1に3・・などです。 入力するセルも、反映させるセルも同じで、条件を複数です。お願いします。 この質問で、先程数々の回答を頂きました。ありがとうございます。 =IF(A1="","",(A1="日本")*1+(A1="韓国")*2+(A1="中国")*3) この数式を使ってみようと思いますが、更に加えて、質問します。表に、この関数を使ったとして、日本、韓国、中国以外の国名が入力された場合に空欄のままにするには、どの様に式を変えれば良いでしょうか? お願いします。

専門家に質問してみよう