アカウント名:
パスワード:
・JとかKとか埋め込むのはちょっと気持ち悪いというか、そこも検索させた方が保守性がいいと思います。
3つめの表のは、1行目(J1/K1)に「シーフ」「メイジ」と入れといてG3: =MATCH($F3, $J$1:$Z$1, 0)+9G4: =MATCH($F4, $J$1:$Z$1, 0)+9で、何列目から取ってくるかを選択(MATCHの第3引数0は、ソート不要な完全一致検索オプション。9足すのは、J列からの検索から列番号に変えるため。J列=10列目に対し、範囲の1列目で見つかった時はMATCHは1を返すので、9足してます。)
・OFFSETが使えるところは、INDIRECT よりは OFFSET を使った方がいいと思います。
H3: =COUNTA(OFFSET($A:$A, 0, $G3-1))に。後述のR1C1形式などは1オリジンで、それに合わせて式を入れてるのに対し、OFFSETの引数は0オリジンなので、「$G3-1」と1引いてます。
・どうしてもINDIRECTを使うしか無い場合は、R1C1形式で。
「リストによる入力規則で=INDIRECT(VLOOKUP($B$3,$F$3:$I$5,4,false))を指定」の部分はOFFSETによる置き換えが無理で、INDIRECT を使うしかないと思いますが、INDIRECTを使う時は、R1C1形式の方が動的生成しやすいです。
I3: ="R2C"&$G3&":R"&$H3&"C"&$G3リストによる入力規則: =INDIRECT(VLOOKUP($B3,$F$3:$I$5,4,false),false)INDIRECTの第2引数をfalseにすると、R1C1形式での指定になります。
といったとこですかね。
まあ、今の分量ぐらいなら全部INDIRECTでもいいと思いますが、参照数が増えてくると、OFFSETに比べてINDIRECTはかなり重いです。再計算にかかる時間が目に見えて遅くなるぐらい…
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ソースを見ろ -- ある4桁UID
INDIRECTよりはOFFSET (スコア:1)
・JとかKとか埋め込むのはちょっと気持ち悪いというか、そこも検索させた方が保守性がいいと思います。
3つめの表のは、1行目(J1/K1)に「シーフ」「メイジ」と入れといて
G3: =MATCH($F3, $J$1:$Z$1, 0)+9
G4: =MATCH($F4, $J$1:$Z$1, 0)+9
で、何列目から取ってくるかを選択
(MATCHの第3引数0は、ソート不要な完全一致検索オプション。
9足すのは、J列からの検索から列番号に変えるため。J列=10列目に対し、範囲の1列目で見つかった時はMATCHは1を返すので、9足してます。)
・OFFSETが使えるところは、INDIRECT よりは OFFSET を使った方がいいと思います。
H3: =COUNTA(OFFSET($A:$A, 0, $G3-1))
に。後述のR1C1形式などは1オリジンで、それに合わせて式を入れてるのに対し、OFFSETの引数は0オリジンなので、「$G3-1」と1引いてます。
・どうしてもINDIRECTを使うしか無い場合は、R1C1形式で。
「リストによる入力規則で=INDIRECT(VLOOKUP($B$3,$F$3:$I$5,4,false))を指定」の部分はOFFSETによる置き換えが無理で、INDIRECT を使うしかないと思いますが、
INDIRECTを使う時は、R1C1形式の方が動的生成しやすいです。
I3: ="R2C"&$G3&":R"&$H3&"C"&$G3
リストによる入力規則: =INDIRECT(VLOOKUP($B3,$F$3:$I$5,4,false),false)
INDIRECTの第2引数をfalseにすると、R1C1形式での指定になります。
といったとこですかね。
まあ、今の分量ぐらいなら全部INDIRECTでもいいと思いますが、
参照数が増えてくると、OFFSETに比べてINDIRECTはかなり重いです。再計算にかかる時間が目に見えて遅くなるぐらい…