Excel VBA: преобразование ссылок на ячейки между обозначениями A1 и R1C1

Чтобы преобразовать ссылки на ячейки между обозначениями A1 и R1C1 в Excel VBA, вы можете использовать следующие методы:

  1. Обозначение от A1 до R1C1:

    Dim rng As Range
    Dim r1c1 As String
    Set rng = Range("A1")
    r1c1 = rng.Address(RowAbsolute:=False, ColumnAbsolute:=False, ReferenceStyle:=xlR1C1)
    Debug.Print r1c1

    Этот код преобразует ссылку на ячейку A1 «A1» в обозначение R1C1 «R1C1».

  2. Обозначение от R1C1 до A1:

    Dim rng As Range
    Dim a1 As String
    Set rng = Range("R1C1")
    a1 = rng.Address(RowAbsolute:=False, ColumnAbsolute:=False, ReferenceStyle:=xlA1)
    Debug.Print a1

    Этот код преобразует ссылку на ячейку R1C1 «R1C1» в нотацию A1 «A1».

  3. Обозначение от A1 до R1C1 (альтернативный метод):

    Dim rng As Range
    Dim r1c1 As String
    Set rng = Range("A1")
    r1c1 = Application.ConvertFormula(rng.Formula, xlA1, xlR1C1)
    Debug.Print r1c1

    Этот код использует метод ConvertFormulaдля преобразования ссылки на ячейку A1 «A1» в нотацию R1C1 «R1C1».

  4. Обозначение R1C1 — A1 (альтернативный метод):

    Dim rng As Range
    Dim a1 As String
    Set rng = Range("R1C1")
    a1 = Application.ConvertFormula(rng.Formula, xlR1C1, xlA1)
    Debug.Print a1

    Этот код использует метод ConvertFormulaдля преобразования ссылки на ячейку R1C1 «R1C1» в нотацию A1 «A1».