対象セルを数値化する
Excel表からの抽出、Excel表の生成。どちらの手順も、その制御シートでは該当項目の指定に「セル参照」を使います。
例えばExcelシートから、項目1~項目12まで横並びの列(データの先頭は2行目)からデータを抽出する場合を考えてみます。下図の例のように、A2、B2、C2~L2と、「A1形式の相対参照方式」で指定すれば事足りるのですが、もしこのデータ列が100列以上あったらどうでしょうか?

100列の場合の抽出指定は、A2、B2、C2~CV2と指定しなければならず、設定作業が面倒な感じ。また、列が減ったり増えたり、並び順が変わるなどメンテナンス時の再設定作業も大変そうです。「A1形式」の代わりに、「オフセット方式」で設定してみましょう。まず、A2の代わりに (2, 1) と指定します。これがオフセット方式で、(行番号, 列番号) の形式でセル参照を表現します。(2, 1) は2行目の1列目、つまりA2のセルを参照します。

(2, 1) と指定したセルの矩形右下の□をポイントすると+に変わるので、そのまま「項目12」の下のセルまで右側にずるっとドラッグしていきます。Excelのオートフィル操作ですね。

手を離すと、(2, 1) ~ (2, 12) まで簡単に設定できました。(2, 12) はL2と同等です。

この手法で、100列でも200列以上でも同じ操作で大丈夫です。列が減ったり増えたり、並び順が変わるなどメンテナンス時には、(2, 1) のセルをつまんで、またドラッグして引き直せば、再設定が即座に完了します!
セル参照をオートフィル
結局、メンテナンスの際に列番号を数える必要が出てくるので、セル参照が良い!という方にはもう一つ裏技をご紹介します。通常、セル参照をオートフィル操作すると、アルファベットではなく数値(行)の部分が増えていきます。

これでは対象セルとして使えないので、ひと手間加えます。それは、最初に「A2」と指定するのではなく「=A2」と記入します。

Enterした時に「START」と入るのは気にしないで下さい。現段階では、このシートのA2セルを参照しているだけです。その後記入したセルをそのまま右にドラッグしていきます。すると、右のセルから「=B2」「=C2」と入っていきます。

ただこのままではxoBlosも対象セルとして認識しませんので、ドラッグし終わったら「ctrl」+「F」で「検索と置換」を出します。置換タブで最初の列に「=」を入力した後、「すべて置換」をクリックすると、、希望通りのセルが入ります!これで100列あってもセル参照が楽になりますね。



まとめ
いかがでしたでしょうか。慣れてしまえばどちらでも良いとは思いますが、私は個人的にセル参照が好きなので後者の方法を多用しております。皆さんも「メンテナンス対応しやすい方法」で編集してください。







