• 締切済み

EXCEL シートで一致する物を抽出する

初めまして、色々調べたあげく上手く出来ず完全に困ってしまったので投稿させて頂きます。 EXCELで他のシートにある縦と横の列が完全に一致する物を抽出して 他のシートのセルに出力させたいのですが上手く出来ません、分かる方が居ましたらご指導お願いします。 データ形式は    速度   10km 2km 3km 4km 距離10Mbps 金額  金額  金額  金額   20Mbps 金額  金額  金額  金額   30Mbps 金額  金額  金額  金額 となっています。 速度と距離が完全に一致したレコードを他のシートのセルに表示させたいと思ってます。

みんなの回答

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

#01です =IF(ISNA(OFFSET(Sheet1!$A$1,MATCH(A6,Sheet1!$A$2:$A$4,0),MATCH(B6,Sheet1!$B$1:$E$1,0))),"",OFFSET(Sheet1!$A$1,MATCH(A6,$Sheet1!A$2:$A$4,0),MATCH(B6,Sheet1!$B$1:$E$1,0))) OFFSET関数の最初の$A$1も Sheet1!$A$1 にします >A1以外の所に合計を出すにはどのようにやったら良いのでしょう? 合計とは何の合計でしょうか。

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

INDEX関数でやって見ます。 (質問とデータのおき場所が少しがうかも知れないので注意) 例データ Sheet1の B3:B5(通信速度Mbpsの区分) 10 20 30 C2:F2(自宅から距離の区分) 10 2 3 4 実質データの表内容 速度ー距離対応表の内容 C3:F5 100 200 300 400 250 350 450 550 390 490 590 690 Sheet2の A1 距離入力データ 10 A2 速度入力データ 2 式 B3 (どこでも良い) =INDEX(Sheet1!$C$3:Sheet1!$F$5,MATCH(A1,Sheet1!$B$3:$B$5,0),MATCH(B1,Sheet1!$C$2:$F$2,0)) 結果 200 答えデータを出す(式を入れる)セルがSheet2以外なら Sheet2の A1-->Sheet2!A1 A2-->Sheet2!A2 に変えること。

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

     A列  B列  C列   D列   E列 1行目      10    2    3    4 2行目 10   100   200   300   400 3行目 20   250   350   450   550 4行目 30   390   490   590   690 の表に対してA6に速度10、B6に距離3を入力しておくと =OFFSET($A$1,MATCH(A6,$A$2:$A$4,0),MATCH(B6,$B$1:$E$1,0)) の式で料金の300が得られます ただしこの式では速度、距離が表と一致しない値をA6、B6に入力すると#N/A!エラーとなります。エラーが出ないようにするには =IF(ISNA(OFFSET($A$1,MATCH(A6,$A$2:$A$4,0),MATCH(B6,$B$1:$E$1,0))),"",OFFSET($A$1,MATCH(A6,$A$2:$A$4,0),MATCH(B6,$B$1:$E$1,0))) とすればよいでしょう

ando211
質問者

補足

有難うございます。 出来ましたが、A1以外の所に合計を出すにはどのようにやったら良いのでしょう? 他のシートに出力しようとしたのですが上手く出来ませんでした。 式は =IF(ISNA(OFFSET($A$1,MATCH(A6,Sheet1!$A$2:$A$4,0),MATCH(B6,Sheet1!$B$1:$E$1,0))),"",OFFSET($A$1,MATCH(A6,$Sheet1!A$2:$A$4,0),MATCH(B6,Sheet1!$B$1:$E$1,0))) Sheet1に先ほどの一覧表、Sheet2のセルB3に出力したところ数値が0と表示されてしまい出来ませんでした。 大変困っています。どうかご指導よろしくお願いします。     A列  B列  C列   D列   E列 1行目     10    2    3    4 2行目 10   100   200   300   400 3行目 20   250   350   450   550 4行目 30   390   490   590   690