目次

目的

  • "=A1" の数式を R1C1 形式の数式に変換したい。
  • "=R1C1" の数式を A1 形式の数式に変換したい。
  • 数式の絶対参照、相対参照を変更したい。

目次まで戻る

その一例

  1. "=A1" を R1C1 形式に変換してみます。
    Sub イコールA1をR1C1形式に変換()
    Debug.Print Application.ConvertFormula("=A1", xlA1, xlR1C1)
    End Sub
    1. "=A1"
      変換前の数式を指定。
    2. xlA1
      変換前の参照形式を指定。
    3. xlR1C1
      変換後の参照形式を指定。
    4. 実行結果は以下のようになりました。
      =RC。R1C1 形式に変換されました。
      =RC。R1C1 形式に変換されました。
  2. "=R1C1" を A1 形式に変換してみます。
    Sub イコールR1C1をA1形式に変換()
    Debug.Print Application.ConvertFormula("=R1C1", xlR1C1, xlA1)
    End Sub
    1. "=R1C1"
      A1 セルへの絶対参照を表している。
    2. 実行結果は以下のようになりました。
      =$A$1。
      =$A$1。

目次まで戻る

相対参照、絶対参照を相互変換

  1. 相対参照を絶対参照に変換してみます。
    Sub 相対参照のイコールA1を絶対参照に変換()
    Debug.Print Application.ConvertFormula("=A1", xlA1, xlA1, xlAbsolute)
    End Sub
    1. xlAbsolute
      ToAbsolute パラメーターです。以下 4 種類あるようです。
      • xlAbsolute(絶対参照)
      • xlAbsRowRelColumn(行のみ絶対参照)
      • xlRelRowAbsColumn(列のみ絶対参照)
      • xlRelative(相対参照)
    2. 実行結果は以下のようになりました。
      =$A$1。ドル記号のついた絶対参照に変換されている。
      =$A$1。ドル記号のついた絶対参照に変換されている。
  2. 絶対参照を相対参照に変換してみます。
    Sub 絶対参照のイコールA1を相対参照に変換()
    Debug.Print Application.ConvertFormula("=$A$1", xlA1, xlA1, xlRelative)
    End Sub
    1. 実行結果は以下のようになりました。
      =A1
      =A1

マクロストック

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

以上、閲覧ありがとうございました。

目次まで戻る

同じカテゴリの投稿(Excel VBA)

前後の投稿