Excel VBA FormulaR1C1 собственности
Этот пример иллюстрирует разницу между A1, R1C1 и R [1] C [1] в стиле Excel VBA.
-
Поместите командную кнопку
на листе и добавьте следующую строку кода (A1 стиль):
Range("D4").Formula = "=B310"
Результат:
-
Добавьте следующую строку кода (R1C1 стиль):
Range("D4").FormulaR1C1 = "=R3C210"
Результат:
Объяснение: ячейки D4, ссылки на ячейки В3 (строка 3, столбец 2). Это абсолютная ссылка (символ $ перед номером строки и буквы столбца).
-
Добавьте следующую строку кода (R [1] C [1] стиль):
Range("D4").FormulaR1C1 = "=R[-1]C[-2]10"
Результат:
C[1]
Стиль, название = «R [1] C [1] Стиль»]
Объяснение: ячейки D4, ссылки на ячейки В3 (одна строка выше и 2 колонки слева). Это относительная ссылка. Эта строка кода дает тот же результат, что и строки кода, используемого на этапе 1.
-
Почему обучение по этому поводу? Поскольку
ссылка: / VBA-примеры-макро-рекордер [Macro Recorder]
использует свойство FormulaR1C1 (R [1] C [1] стиль). Macro Recorder создает следующие строки кода, если ввести формулу = B310 в ячейку D4.
Объяснение: Вы можете видеть, что это тот же самый код строки используется на шаге 3.