xlwingsのrangeのセル参照は、A1形式は使えるが、R1C1形式は使えない。
import xlwings as xw
xw.Range('A1') #これは○
xw.Range('R1C1') #これは×
仕方ないので、関数で一度A1形式に変換して、Rangeに渡す。以下の関数を定義。
import xlwings as xw
def toA1(R1C1):
# Excelが起動している必要あり
return xw.apps[0].api.ConvertFormula(R1C1, -4150, 1, 4)
使用例
xw.Range(toA1('R1C1:R3C4'))
# xw.Range('A1:D3')と同じ
以下を参考にしました。
R1C1形式をA1形式に変換する