• 締切済み

エクセル関数教えてください。

すごく単純そうでいて分からなくなってしまったことがあります。 「=C1」 というような簡単な式がありますが、 「C」の部分、「1」の部分を他のセルに入っている値を利用したいのです。 B3セルに「=A1セルに書かれた列番号 B1セルに書かれた行番号」という式を入れたい。 というかんじです。

みんなの回答

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.6

A1に「3」 B1に「1」と入力している場合なら 「=INDEX(C:C,B1)」とか 「=INDEX(1:1,A1)」とか 「=INDEX(1:1048576,B1,A1)」で。 どうしても記号で指定したいというなら A1に「C」 B1に「1」と入力して 「=INDIRECT(A1&B1)」 「=INDEX(1:1048576,B1,CODE(A1)-64)」 どっちもお勧めはしませんが 後者の方がまだましです。

pluto1991
質問者

お礼

ありがとうございました。うまくいきました。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.5

>B3セルに「=A1セルに書かれた列番号 B1セルに書かれた行番号」という式を入れたい。 =OFFSET(A1,B1-1,A1-1) または =INDIRECT(ADDRESS(B1,A1))

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

色んなやり方を考えてみた。 例データ A1とA2に 3 ーー列数字 4 ーー行数字 の数値データがあるとする。 また C4セルに、数値「123」があるとする。文字列でも可。 ーー C4セルの結果と その関数式 123 =OFFSET(A1,A2-1,A1-1) 123 =INDEX(A1:Z10,A2,A1)  ’A1:Z10’のZと10は一例 123 =rng(A2,A1) VBAで私製巻数作成。下記。rngは任意に設定可 123 =INDIRECT(CHAR(64+A1)&CHAR(48+A2)) ーー 123 =INDIRECT("C4") '参考 C4 =CHAR(64+A1)&CHAR(48+A2) ’参考 ーー VBAで作る私製関数 標準モジュールに Function rng(x, y) rng = Cells(x, y) End Function を作成

  • SI299792
  • ベストアンサー率47% (780/1630)
回答No.3

すみません。 見間違えていました。 C1を参照するときは、 A1 3 B1 1 と入力するのですね。 =OFFSET(A1,B1-1,A1-1) です。このくらいのミスはすぐわかると思うのですが、念のため書いておきます。 ここは回答が削除できないから不便だ。間違い回答が残ったうえ、回答だらけとなりごちゃごちゃになる。

  • skp026
  • ベストアンサー率45% (1010/2238)
回答No.2

以下の記事はそのものだと思いますので確認ください。 参照するセルの位置を数式で指定する - 計算結果により参照するセルの位置を変更する https://www.ipentec.com/document/excel-reference-cell-location-use-variable OFFSETとINDIRECTの2種類の方法が紹介されています。

  • SI299792
  • ベストアンサー率47% (780/1630)
回答No.1

C1を参照するときは、 A1 3 A2 1 と入力するのですね。 =OFFSET(A1,A2-1,A1-1) です。 空白の時0になるのが嫌なら、 セルの書式設定で#にします。 0は出して空白は出したくないなら、 =IF(OFFSET(A1,A2-1,A1-1)="","",OFFSET(A1,A2-1,A1-1)) です。

関連するQ&A

専門家に質問してみよう