出先の Excelが突然R1C1モードになっていてビックリしたので、チョット勉強してみました。どうも大昔のスプレッドシートはA1C1だったようです。
まず、通常のExcelはA1モードだそうです。
列がアルファベット、行は数値
A1C1モードは・・・
列も行も数値
例えば・・・
D3 は R3C4 となります。
D3 > D列3行
R3C4 > 3行4列
設定の切替は・・・
Finder側の[Excel]> [環境設定]から・・・
[計算]から
[R1C1表示形式を使用する]で切り替えます。
もちろん関数の表記は自動的に切り替わります。ただし、マクロは自動的には切り替わりません。
例えば、A1;A5の数値をB1:B5に3倍にして書き出す処理をVBA記述すると・・・
' A形式の場合
Sub A1LoopExample()
Dim i As Integer
For i = 1 To 5
' A形式で式をセット:B列 = A列の値 × 3
Range("B" & i).Value = Range("A" & i).Value * 3
Next i
End Sub
Sub R1C1LoopExample()
Dim i As Integer
For i = 1 To 5
' R1C1形式で式をセット:B列(列2) = A列(列1)の値 × 3
Cells(i, 2).FormulaR1C1 = "=RC[-1]*3"
Next i
End Sub
こうして比べるとR1C1形式の方が判りやすいですね。