Excel2013のOFFSET関数を使った時のエラーの原因を教えてください。
(他のやり方もあるのでしょうが、今回のエラーの原因が知りたいです)
A1に=Z1と入力して右や下にオートフィルすればZ1周辺の値をA1周辺に表示できます。
同じことを=OFFSET($Z$1,ROW(A1)-1,COLUMN(A1)-1)で表したいときに
「$Z$1」というセル番地を計算から得ようとするとエラーになってしまい困っています。
例えばA1:Z1の中からE2に入力した文字列と同じ値を持つセルの番地を得たいときは、=ADDRESS(1,MATCH(E2,A1:Z1,0),1)でOKですね?
それなのにこの数式をそのままOFFSET関数の"基準"の部分に持ってくるとエラーになってしまいます。
=OFFSET(ADDRESS(1,MATCH($E$2,$A$1:$Z$1,0),4),ROW(A1)-1,COLUMN(A1)-1)
ADDRESSで得られるセル番地は文字列として扱えないんでしょうか?
(ちなみに=OFFSET($Z$1,ROW(A1)-1,COLUMN(A1)-1)と直接打てば正しい結果が得られます。)
No.2ベストアンサー
- 回答日時:
対策はNo.1様のとおりですね。
> 今回のエラーの原因が知りたいです
ADDRESS関数が返すのはアドレスを示す「文字列」にすぎません。そしてOFFSET関数で必要なのは、参照(セルそのもの)です。なのでデータの種類が違うのでエラーになります。
そこで「アドレス文字列」を「参照」に変換することが必要になりますが、それを行うのがINDIRECT関数になります。
分かりやすい説明ありがとうございました。
Excelの因数としてつかうものは””で囲ったものだけが文字列として扱われると思っておりましたが、そうではなくても文字列として扱われてしまうものがあるとは知りませんでした。勉強になりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelでなぜこのような式をつかっているのでしょうか、行に1,2,3と連番を振るだけなのに 5 2023/04/08 20:00
- Excel(エクセル) Excelで縦1列に並んだ大量の数字から、一定間隔で平均値を出したい。 2 2023/02/20 09:17
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
- Excel(エクセル) エクセル 関数について質問です。 2 2022/10/03 11:14
- Visual Basic(VBA) いつもお世話になります 下記のコード実行すると エラーになります わかるかた教えてくれませんでしょう 6 2022/12/17 15:01
- Excel(エクセル) VBAのoffsetの動き方について教えてください 3 2022/11/25 23:36
- Excel(エクセル) If関数に関する質問です。(再掲) 3 2022/10/01 20:51
- Excel(エクセル) エクセルでIF関数中にIFERROR関数を使いたいのですが???? 5 2022/04/08 13:24
- Excel(エクセル) DATEVALUE関数がエラーになる 2 2022/07/12 19:30
- Excel(エクセル) 【VBA】A列にある連続したデータの1番下に文字列を入力したい 1 2023/01/28 04:40
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
OFFSET関数とCOUNTIFって組み合わせはできますか? COUNTIF関数で行を新しく追加した
Excel(エクセル)
-
エクセル、 名前の定義に関数を使用すると参照できない
Excel(エクセル)
-
offsetのエラー回避方法
Excel(エクセル)
-
-
4
Excelのmatch関数エラー原因が分かりません
Excel(エクセル)
-
5
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
6
エクセルで特定のセル以下の全部のセルの選択方法
Excel(エクセル)
-
7
EXCELの条件付き書式で数式を空白と認識してくれる方法
Excel(エクセル)
-
8
自分の左隣のセル
Excel(エクセル)
-
9
複数の条件に合う行番号を取得するには
その他(Microsoft Office)
-
10
【Excel関数】UNIQUE関数で0"を返さない方法?"
Excel(エクセル)
-
11
Offset関数の使い方
Excel(エクセル)
-
12
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
13
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
14
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
15
Excel-vba 文字列と変数を連結して更に変数として扱いたい
その他(プログラミング・Web制作)
-
16
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
17
Excel MATCH関数で検索範囲内に同じ値の検索値が複数ある場合
Access(アクセス)
-
18
エクセルで空白を無視して一番左にあるセルを参照したい
Excel(エクセル)
-
19
エクセル関数>参照ファイル名をセルから呼び出す
Excel(エクセル)
-
20
excelの特定のセルの隣のセル指定について
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの関数について教えて...
-
Excelカスタム関数(アドイン登...
-
Excelデータをコピペして、ペー...
-
Excel関数-文字列で自動作成さ...
-
スプレッドシート、Excelでの数...
-
Excelで50個のセルに同じ文字を...
-
Microsoft Officeの中古は信用...
-
スプレッドシートで使う数式を...
-
エクセルVBA、別ブックへ転記す...
-
エクセルで会社の従業員のデー...
-
エクセルで不等号記号(≠)が上に...
-
エクセルの表で1年間の曜日を...
-
A列とB列を参照してC列に連番を...
-
エクセルの空欄をつめて、次の...
-
エクセルでの特別な文字を上に...
-
エクセルでセルに標準で入力さ...
-
エクセル日付 文字列の関数がエ...
-
エクセル2013で月間勤務表から...
-
エクセルの日付を編集する
-
EXCELの質問です 119から足した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA、別ブックへ転記す...
-
エクセルでの作業計算方法について
-
時間によってファイル名が変わ...
-
【関数】適切な文字数の数字を...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
【マクロ】ファイル名の変更に...
-
UNIQUE関数が使えないバージョ...
-
エクセルの計算
-
【関数】先頭だけにある、半角...
-
Excelで、決まった行を繰り返し...
-
Excelでセルの値が同じか...
-
LOOKUP関数を使えばいいのでし...
-
Excel
-
はがきについて。
-
エクセルの条件付き書式につい...
-
エクセルのデーターが2か月前の...
-
エクセル②
-
エクセルで「-0.0」と表示さ...
-
Microsoft1Officeの互換ソフト...
おすすめ情報