• ベストアンサー

エクセル:新しいマクロの記録について

「新しいマクロの記録」で、 ・Sheet1のセルA1に「=Sheet2!I1」と入力 という操作を記録してもらったのですが、 記録された内容を見ると、 ActiveCell.FormulaR1C1 = "=Sheet2!RC[8]" と書かれていました。 FormulaR1C1もよくわからないけど、 検索したところ、たぶんセル入力に使う決まった記述なんだろうと認識しました。 が、「セルI1」が「RC[8]」になったのが理解できません。 どんな法則でこの「8」という数字が出てきているのでしょうか? 別のコードの中では、 コード内では同じ RC[229] なのですが、 参照するシートによって、この参照しているセルが変化しているように見えます。 具体的には、 Sheet1!RC[229]と書かれた方はセルIM2を、 Sheet2!RC[229]と書かれた方はセルIB2を参照しています。 (実際セルにカーソルを合わせると、RC[229]の部分はIM2,IB2と表示されます) Sheet1も2も、最も右側にある列はそれぞれIM,IBなので、 RC[229]とは終端を意味するのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

「R1C1形式」と呼ばれる表記方法です。 >「セルI1」が「RC[8]」になったのが理解できません。 右横に8セル離れた位置を示します。 A1を選択して、[→]を8回押すとI8セルになります。 >コード内では同じ RC[229] なのですが、 "[]" で括られた場合は、アクティブセルを基準にした相対参照になるので、見ただけではどのセルを参照しているか判断できません。 http://www.asahi-net.or.jp/~ef2o-inue/shiki/sub03_010_02.html http://homepage2.nifty.com/kumando/ex/pg/pg01006.html

rem_1982
質問者

お礼

回答ありがとうございます。 理解できました。 挙げて頂いたサイトもよく読んでみようと思います。

その他の回答 (1)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

>「セルI1」が「RC[8]」になったのが理解できません A1セルにとってセルI1が「RC[8]」つまり、同じ行(Row)の8列(Column)右にあるということです。 同様に、RC[229]は同じRowの229Column右にあるということです。

rem_1982
質問者

お礼

回答ありがとうございます。 よくわかりました。 同じセルだと思ってた別シート上のRC[229]も、 確かに開始のセルはそれぞれ違う場所でした。

関連するQ&A