• 締切済み

エクセル - 抽出からの隣接セルの参照

エクセル2007を使用しています。 ある範囲から対象セルの値に最も近い値を抽出し、抽出先の隣接するセルの番号を参照したいのですが、なにかいい方法はないでしょうか?

みんなの回答

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

回答が質問者には難しいと思うので、プロセスを作業列を使って説明してみる。 例データ A列  B列   C列 58 25 33 68 35 26 7 60 27 65 32 14 19 77 44 62 29 30 3 67 34 B列は =ABS(A1-$C$1) 「近さ」を出している。 その中の最小値は =MIN(ABS(($A$1:$A$10-$C$1))) と入れてSHIFT+CTRL+ENTERを押す(配列数式)。 結果(B13セル。どこでも空きセルでよいが) 3 これがどこ(どの行)にあるかは =MATCH(B13,$B$1:$B$10,0) で 結果 9 組み合わせると =MATCH(MIN(ABS(($A$1:$A$10-$C$1))),$B$1:$B$10,0) と入れてSHIFT+CTRL+ENTERを押す。 右隣セルはINDEX、OFFSETで指定できるが 実際例では、「行」がわかれば、隣列は、式の作成者がB列やC列は具体的に決められるでしょう。上例はB列は、説明のため使っているので話は変わるが)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.4

すみません。No2です。先に紹介した式は 最も近い値でした。 そのセルの行番号でよければ 抽出した最も近い値を検索値にして MATCH関数使ってみてください。 式がB1にあったとして =MATCH(B1,A2:A10)などです。 気になる部分ですが、 差が+側、-側含めて 複数同じ値がある場合が考えられます。 作業列で =ABS(A$1-A2)  下フィル RANK関数で 作業列つくって オートフィルターで 1 で絞り込む 必要があるかみしれません。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

◆追加です ★この式は「配列数式」です ★式を入力後、Shift+Ctrlを押しながら、Enterを押してください ★式の両端に、{ } がついたら式が確定されています

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

仮に ある範囲  A2:A10 対象セルの値 A1  として =INDEX(A2:A10,MATCH(MIN(ABS(A2:A10-A1)),ABS(A2:A10-A1),FALSE)) いれて Ctrl +Sheft + Enter で決定してみてください。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

     A     B    C 1    56    62    A5 2    66 3    24 4    58 5    63 6    12 7    75 8    60 9    28 10    65 C1="A"&MATCH(LOOKUP(1,0/(ABS(A1:A10-B1)=MIN(ABS(A1:A10-B1))),A1:A10),A1:A10,0)

関連するQ&A

専門家に質問してみよう