目次
目的
- "=A1" の数式を R1C1 形式の数式に変換したい。
- "=R1C1" の数式を A1 形式の数式に変換したい。
- 数式の絶対参照、相対参照を変更したい。
その一例
- "=A1" を R1C1 形式に変換してみます。
Sub イコールA1をR1C1形式に変換()
Debug.Print Application.ConvertFormula("=A1", xlA1, xlR1C1)
End Sub- "=A1"
変換前の数式を指定。 - xlA1
変換前の参照形式を指定。 - xlR1C1
変換後の参照形式を指定。 - 実行結果は以下のようになりました。
- "=A1"
- "=R1C1" を A1 形式に変換してみます。
Sub イコールR1C1をA1形式に変換()
Debug.Print Application.ConvertFormula("=R1C1", xlR1C1, xlA1)
End Sub- "=R1C1"
A1 セルへの絶対参照を表している。 - 実行結果は以下のようになりました。
- "=R1C1"
相対参照、絶対参照を相互変換
- 相対参照を絶対参照に変換してみます。
Sub 相対参照のイコールA1を絶対参照に変換()
Debug.Print Application.ConvertFormula("=A1", xlA1, xlA1, xlAbsolute)
End Sub- xlAbsolute
ToAbsolute パラメーターです。以下 4 種類あるようです。- xlAbsolute(絶対参照)
- xlAbsRowRelColumn(行のみ絶対参照)
- xlRelRowAbsColumn(列のみ絶対参照)
- xlRelative(相対参照)
- 実行結果は以下のようになりました。
- xlAbsolute
- 絶対参照を相対参照に変換してみます。
Sub 絶対参照のイコールA1を相対参照に変換()
Debug.Print Application.ConvertFormula("=$A$1", xlA1, xlA1, xlRelative)
End Sub- 実行結果は以下のようになりました。
- 実行結果は以下のようになりました。
マクロストック
Private Sub 数式形式変換(数式, 前 As XlReferenceStyle, 後 As XlReferenceStyle, 種類 As XlReferenceType, 基点)
Debug.Print Application.ConvertFormula( _
Formula:=数式, _
fromReferenceStyle:=前, _
toReferenceStyle:=後, _
ToAbsolute:=種類, _
RelativeTo:=基点 _
)
End Sub
テスト環境
- Windows 10(64 ビット)
- Microsoft Office Excel 2003
以上、閲覧ありがとうございました。