みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

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

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

投稿日時 - 2019-07-08 10:07:30

QNo.9633207

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.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)」
どっちもお勧めはしませんが 後者の方がまだましです。

投稿日時 - 2019-07-09 07:02:24

お礼

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

投稿日時 - 2019-08-03 21:37:13

ANo.5

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

投稿日時 - 2019-07-08 12:57:11

ANo.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
を作成

投稿日時 - 2019-07-08 11:28:36

ANo.3

すみません。
見間違えていました。
C1を参照するときは、
A1 3
B1 1
と入力するのですね。

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

投稿日時 - 2019-07-08 10:34:25

ANo.2

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

OFFSETとINDIRECTの2種類の方法が紹介されています。

投稿日時 - 2019-07-08 10:23:32

ANo.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))
です。

投稿日時 - 2019-07-08 10:21:13

あなたにオススメの質問