• 締切済み

条件を組み合わせる関数について

エクセルの関数を使って、条件を組み合わせた表を作成したいと考えています。 例 (表1) サル       1  2 ゴリラ       3   1 チンパンジー  2   3 ------------------------------------ (条件) A   - ● ● - B   ● ● - - C   ● - ● - ------------------------------------ (表1と条件を組み合わせたもの) サル       B   1 2 - - ゴリラ       C    3 - 1 - チンパンジー  A    - 2 3 - ------------------------------------ わかる方いらっしゃいましたら、教えていただけますでしょうか。 どうぞよろしくお願い致します。

  • r-123
  • お礼率94% (37/39)

みんなの回答

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

A1:D3 サル 1 2 12 ゴリラ 1 3 13 チンパンジー 2 3 23 作業列D1の式は =B1 & C1 下方向に式を複写 **ゴリラの31を13に改めた。これが許されない場合は、この回答を無視してください。 ーー A7:E7 A - ● ● 23 B ● ● - 12 C ● - ● 13 作業列のE7の式は  =IF(B7="●",COLUMN(B7)-1,"")&(IF(C7="●",COLUMN(C7)-1,"")&(IF(D7="●",COLUMN(D7)-1,""))) 下方向に式を複写 ーーー A12:E14 サル B 1 2 - ゴリラ C 1 - 3 チンパンジー A - 2 3 B12の式は =INDEX($A$7:$A$9,MATCH(VLOOKUP(A12,$A$1:$D$3,4,FALSE),$E$7:$E$9,0)) 下方向に式を複写する。 C12の式は =IF(NOT(ISERROR(FIND(COLUMN()-2,$D1))),MID($D1,COUNT($B12:B12)+1,1)*1,"") E12まで式を複写。 C12:E12をC14:E14まで式を複写。 結果 A12:E14 

noname#204879
noname#204879
回答No.3

  A  B  C  D  E  F  G    H    I  J K L M  N 1 A - ● ● -  110   サル     B 1 2    1100 2 B ● ● - - 1100   ゴリラ    C 3 1    1010 3 C ● - ● - 1010   チンパンジー A 2 3     110 4 D ● ● ● ● 1111   トラ     D 1 2 3 4 1111 F1: =(B1="●")*10^3+(C1="●")*10^2+(D1="●")*10^1+(E1="●")*10^0 N1: =(COUNTIF($J1:$M1,1)*10^3)+(COUNTIF($J1:$M1,2)*10^2)+(COUNTIF($J1:$M1,3)*10^1)+(COUNTIF($J1:$M1,4)*10^0) I1: =INDEX(A$1:A$4,MATCH(N1,F$1:F$4,0))

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

例えば表1がA2セルからE20セルの範囲にあり、条件がH2セルからL20セルの範囲内にあるとします。 そこで表1と条件を組み合わせたものをA30セルからF30セル以降に入力されるとします。 A30にはサル、A31にはゴリラ、・・・・というように そこで表1には作業列としてF2セルには次の式を入力し、F20セルまでオートフィルドラッグします。 また、条件の表の作業列としてM2セルには次の式を入力しM20セルまでオートフィルドラッグします。 そこで答えの表ですがB30セルには次の式を入力し、F30セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF($A30="","",IF(COLUMN(B2)=2,INDEX($H$2:$M$20,MATCH(VLOOKUP($A30,$A$2:$F$20,6,FALSE),$M$2:$M$20,0),1),INDEX($A$2:$E$20,MATCH($A30,$A$2:$A$20,0),COLUMN(A1))))

r-123
質問者

お礼

早速の回答、ありがとうございます。 応用して使用したいと思います。

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

強引にやってみました。 表1がSheet1,条件がSheet2にあり、「表1と条件を組み合わせたもの」をSheet3に表示したいならば、Sheet3のC1に↓を入れてC1:F3にコピーでどうでしょう。 =IF(VLOOKUP($B1,Sheet2!$A$1:$E$3,COLUMN()-1,FALSE)="●",VLOOKUP($A1,Sheet1!$A$1:$C$3,COLUMN()-COUNTIF($A1:B1,"-")-1,FALSE),"-")

r-123
質問者

お礼

早速の回答、ありがとうございます。 画像つきでわかりやすかったです。 応用して使用したいと思います。

関連するQ&A

  • エクセルの関数で2つの条件に合うものを探す。

    エクセルの関数で下記のことをしたいのです。 表(1) T>=0.6  0.6>T>=0.3  0.3>T>=0.15 U<2   A     B       C 2<=U<3  B     B-C     D 3<=U<4  C      C      D 4<=U<6  D     C-D     D 6<=U    E      D      D 別の表(2)に U   T         1.5  0.3         0.9  0.8             5.9  0.13         ・   ・         ・   ・ とあります。 そのためUの値とTの値で表(1)のAからE値を抽出し別の表にAからEを表示したいのです。エクセルの関数(IF,AND,LOOKUP等)を試してみたのですがうまくいきません。できるだけエクセルの関数のみで、よい方法があれば教えてください。よろしくおねがいします。     

  • エクセル関数

    エクセルで関数を使って、いくつかの条件を満たしたものを「フィルタ」を使ってではなく、関数で数値を出したいと思っています。 例  A    B    C   1 A支店   総務  名前A 2 B支店   営業  名前B 3 A支店   営業  名前C 4 B支店   総務  名前D 5 6 A支店営業 1 分かりにくいとは思いますが、上記の様な表で、B6をもとめたいのです。AND関数やCOUNTIFなどを合わせて使ってみましたが、なかなかうまくいきません。どういった関数を使えば良いですか? よろしくお願いします。

  • Excelの関数を教えてください。

    Excelの関数を教えてください。    A  B  C 1  *  A  100  2     A  200 3  *  B  300 4  *  A  400 上記のような表があるとします。 「A列が*でなおかつB列が"A"の時Cを合計しなさい。」というような式を作りたいのですがどのようにしたらよいでしょうか?うえの表で言うとこの式で「500」という数字を表示したいのです。条件が1つの時は「SUMIF」関数でやったのですが条件が2つとなった時どうしたらよろしいでしょうか?

  • IF関数の条件がわかりません

    ExcelのIF関数の条件でわからないので教えてください。 「6%以下かつ50,000以下だと判定A、6%以下かつ30,000以上50,000未満は判定B、それ以外はC」 問題の解答ですと、VLOOKUPを使用するみたいですが、検定でわざわざ参照する表を使用しないといけないので、IF関数のみで出来るならその回答を教えていただけますか? よろしくお願いします。

  • 関数を使い、”値”の条件で抜き出した表を作る。

     初めまして、よろしくお願いします。    A     B      C   時間    区分    値 10;45    赤      1 10;23    青     11 10;05    緑      5 10;01    黄     34 09:55    白     23 09:40    茶      9 09:20    金     50 09:12    黒     12 とある表を関数式を使い、”値”の数10以上という条件で抜き出した表にしたいのです。    A     B      C   時間    区分    値 10;23    青     11 10;01    黄     34 09:55    白     23 09:20    金     50 09:12    黒     12  関数式を使い、作りたいので、解る方、よろしくお願いします。

  • 2つの条件から1個のデータを導き出す関数が分かりません。

    excelで売上集計表を作っているのですが、関数が分からなくて困っています。VLOOKUPやDSUMなどは知っているのですが、2つの条件から1個のデータ抽出する方法が分かりません。 (例)サイズ+色 → 該当する値段  など 【列】カラー 【行】サイズ → 【交わるセル】値段 という表(1)が参照元として有ります。 その参照表とは別に表(2)として、【A列】には購入者を【B列】カラー 【C列】サイズ と入力していく管理表で【D列】に同じ行の「カラー」と「サイズ」を参照して、別表(1)の価格を自動表示できるような関数を入力したいのです。このようなケースの場合どのような関数を入力すればよいのでしょうか。

  • エクセル関数:複数の条件を満たす行の合計

    例えば下記の様な表の場合に、A行が”2”で、B行が”桃”の行のCの値の合計を出したいのですが。 A   B     C 1 2 桃    10 2 2  蜜柑 10 3 3  蜜柑 10 4 3  桃 10 5 2  桃 10  6 4  蜜柑 10 SUMIFで、出来ないかなと思ったのですが複数の条件の場合というのがヘルプに出ていません。 エクセル本を見たところDSUMというやり方があるのですが、これだと数式だけでなく欄外に見出しと条件の入った表を別途作成しなければならないようです。 色んな場合の合計を出すのに、場合の数だけ見出しと条件の入った表を作るというの方法しかないのでしょうか? もし関数の数式だけで上記の値を出す方法を御存知の方、教えて下さい。 「DSUMで、見出しと条件の入った表を作ってしか出せない」というお答えでもけっこうです。出来ないと分かれば、簡単に数式だけで出すのは諦めて、DSUMを使います。

  • 二つの条件にあった関数

    たとえばAさんBさんCさんの月の売り上げの集計表があり別の表にAさんの4月の売り上げを引っぱってきたいというときどのような関数を使えばいいのでしょうか? IF関数を使えば何とかなると思ってんですがエラーが出てしまいました

  • エクセル2000 複数条件検索 

    エクセル2000を使用しています。 エクセル2000は、COUNTIFS関数が使用できませので同じような条件の 関数を作成するにはどうすれば良いでしょうか。 例   A  B    C 1 月 9:00  OK 2 水 10:01  NG 3 月 10:36  OK 月曜日9:00~9:59でOKの件数は1件 式 =COUNTIFS(A1:A99, "月", B1:B99, "<10:00", C1:C6, "OK") 結果 1

  • 特殊な条件を満たす関数を探しています

    以下,変数は全て実数,関数は全て実関数とします. まず,定数cに対し,aとbの関数fを,f(a, b) = a / (b^c) と定義します.ただし,^はべき乗を表す記号とします.例えば,c = 0.5を仮定すると,f(0.6, 4) = 0.3, f(2.1, 0.49) = 3となります. いま,任意のa1,a2,b1,b2と,任意のr(0<=r<=1)に対して,条件: g(f((1-r)*a1+r*a2, (1-r)*b1+r*b2)) = (1-r)*g(f(a1,b1)) + r*g(f(a2,b2)) を満たすようなfの関数g(f)を探しています. この条件を,見易さのため,括弧を換えて書くと, g{ f((1-r)*a1+r*a2, (1-r)*b1+r*b2) } = (1-r)*g{ f(a1,b1) } + r*g{ f(a2,b2) } となります.例えば,r = 0.5に対しては, g{ f((a1+a2)/2, (b1+b2)/2) } = [ g{ f(a1,b1) } + g{ f(a2,b2) } ] / 2 が満たされることになります. いきなりg(f)を教えて下さいというのは無理なお願いだと思いますが,g(f)の探し方や,有無の見当のつけ方,または上記のような条件の名前など,教えて頂ければ助かります.よろしくお願い致します.

専門家に質問してみよう