Как обращаться к ячейке, когда адрес находится в переменной

Например, в выражении вместо написания адреса A1, как я могу написать что-то вроде: A(B1) с B1 = 1.

Ответы

Ответ 1

Я думаю, что другой способ объяснить, что делает INDIRECT:

Он превращает текст в диапазон, если этот диапазон действителен.

например. Если у вас есть текст A1, он будет ссылаться на A1. Если у вас есть текст C2: C100, вы получите это как диапазон.

Теперь один из наиболее распространенных способов в excel генерировать текст в виде диапазонов - это объединить. Итак, если вы соедините A и 1 (CONCATENATE("A","1")), вы получите A1.

И вы можете использовать ссылку в этом объединении. Пусть говорят, что ячейка B1 содержит 1.

=CONCATENATE("A",B1)

дает текст A1.

Следовательно, чтобы получить ячейку A1, вы сможете использовать:

=INDIRECT(CONCATENATE("A",B1))

За исключением того, что функция CONCATENATE() теперь немного длинна, но не волнуйтесь! Вы можете использовать &:

=INDIRECT("A"&B1)

Работает так же хорошо.

Если у вас есть что-то более сложное, как у вас есть C в A1 и 32 в B1, чтобы ссылаться на ячейку C32, вы можете сделать:

=INDIRECT(A1&B1)

Что дает =INDIRECT("C"&"32"), =INDIRECT("C32") и, наконец, =C32

Ответ 2

`INDIRECT '- это функция, которую вам нужно использовать.

В документации :

Синтаксис:

НЕПРЯМЫЕ (Ref; A1)

Ref представляет ссылку на ячейку или область (в текстовой форме), для которой нужно вернуть содержимое.

A1 (необязательно) - если установлено значение 0, используется нотация R1C1. Если этот параметр отсутствует или установлен на другое значение, отличное от 0, используется нотация A1.

Пример

= INDIRECT (A1) равно 100, если A1 содержит C108 в качестве ссылки, а ячейка C108 содержит значение 100.

= SUM (INDIRECT ( "a1:" и ADDRESS (1; 3))) суммирует ячейки в области A1 до ячейки с адресом, определенным строкой 1 и столбцом 3 Это означает, что общая площадь A1: C1.

Ответ 3

= OFFSET (B1, 0, 1)

OFFSET (ссылка, смещение строки, смещение столбца, высота по умолчанию - 1, ширина по умолчанию - 1)

Пример 1. У нас есть таблица умножения и нам нужно найти ответ по какой-то глупой причине с помощью СМЕЩЕНИЯ.

   A   B  C  D  E  F
1      1  2  3  4  5
     ---------------
2  1 | 1  2  3  4  5
3  2 | 2  4  6  8 10
4  3 | 3  6  9 12 15
5  4 | 4  8 12 16 20
6  5 | 5 10 15 20 25

Скажем, нам нужно 2x4 = OFFSET (A1, 2, 4) или в этом случае переключение чисел работает одинаково хорошо = OFFSET (A1, 4, 2)

Пример 2. Позвольте рассчитать сумму всех чисел в предыдущей таблице умножения, которые равны 2 или более. = SUM (OFFSET (A1, 2, 2, 4, 4))