Стиль R1C1

Стиль R1C1

Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье мы написали первую процедуру на VBA. В данной статье я бы хотел рассказать, что такое стиль R1C1 в Excel, и как его применять. Если вы часто работаете в Excel, то наверняка сталкивались с ситуацией, когда у вас вместо привычных букв появились цифры. Первый вопрос, который при этом возникает — как вернуть всё обратно? Для начала я покажу, как этот стиль включить (или отключить). Для этого достаточно зайти в параметры Excel:

Стиль R1C1_1

Напоминаю, что я использую версию 2007, в 2010 и 2013 немного по-другому ("Файл" — "Параметры"). Затем выбираем Формулы, ставим галочку напротив "Стиль ссылок R1C1" и нажимаем "ОК":

Стиль R1C1_2

После этого вы увидите, что привычные буквы исчезли, и теперь появились цифры:

Стиль R1C1_3

Мы привыкли обращаться к ячейкам так: A5, BC100. Здесь как бы всё понятно. В стиле R1C1 данные ячейки будут иметь следующие значения: R5C1, R100C55. R отвечает за номер строки, C — за номер колонки. Запись BC100 нам не говорит, какой номер у столбца. Отсюда вытекает первое преимущество стиля R1C1 — это использование при больших объемах данных. Если мы пишем макрос, который обрабатывает большие объёмы данных, то лучше использовать стиль R1C1.

Второе преимущество — это легкость при поиске ошибок в формулах. Давайте создадим пример, в котором будет отражаться работа магазина по продаже автомобилей марки KIA. Здесь будет марка машины, цена и количество проданных машин. Общая стоимость будет считаться умножением цены одной на количество машин. Реализуем это в двух стилях: A1 и R1C1.

Стиль R1C1_4

Стиль R1C1_5

На первой картинке мы видим, что все формулы отличаются. А в стиле R1C1 все формулы абсолютно одинаковые и сразу видно, где ошибка. Конечно, данный пример надуманный, но, когда данных очень много, польза данного стиля становится очевидной.

Давайте разберем формулу вида "= RC[-2]*R[1]C[-1]", чтобы стало понятнее, как читать данный стиль. R означает, что мы находимся в той же строке (R — с англ. row — строка), C[-2] (C с англ. column — столбец) означает, что смещаемся влево от активной ячейки, т.е. смещаемся на 2 столбца назад (нумерация столбцов идёт слева направо). R[1] говорит, что смещаемся на одну строку вниз (так как нумерация строк идёт сверху вниз). C[-1] говорит, что смещаемся влево на один столбец от активной ячейки.

Думаю теперь у вас не должно возникнуть вопросов с чтением стиля R1C1.

Напоследок, давайте напишем макрос, который будет переводить из одного стиля в другой, и повесим кнопку данного макроса на панель быстрого доступа:

Sub Переключение_стилей()
    If Application.ReferenceStyle = xlA1 Then
        Application.ReferenceStyle = xlR1C1
    Else
        Application.ReferenceStyle = xlA1
    End If
End Sub

В данном случае вы можете начать записывать макрос, затем его остановить. Далее нужно будет войти в макрос и вставить данный код.

Давайте теперь разместим наш макрос на панели быстрого доступа, чтобы нам было удобнее пользоваться. Для этого необходимо зайти "Параметры" — "Настройка":
Выбрать Макросы и добавить наш макрос на панель быстрого доступа (можно также изменить иконку макроса, нажав кнопку Изменить):

Стиль R1C1_6

Готово, теперь наш макрос висит на панели быстрого доступа. Попробуйте попереключать стили и убедитесь, что всё работает:

Стиль R1C1_7

В данной статье вы узнали, что такое стиль R1C1 в Excel, а также в каких случаях его стоит применять.

На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.


Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *