ti-enxame.com

Como se referir a uma célula quando o endereço está em uma variável

Por exemplo, em uma expressão, em vez de escrever o endereço A1, Como posso escrever algo como: A(B1) com B1 = 1.

25
Hoa Vu

Penso que outra maneira de explicar o que o INDIRECT faz é dessa maneira:

Transforma o texto em um intervalo, se esse intervalo for válido.

Por exemplo. Se você tiver o texto A1, ele fará referência a A1. Se você tiver o texto C2: C100, receberá como intervalo.

Agora, uma das maneiras mais comuns no Excel de gerar texto na forma de intervalos é concatenar. Portanto, se você concatenar A e 1 (CONCATENATE("A","1")), obterá A1.

E você pode usar uma referência neste concatentado. Digamos que a célula B1 contenha 1.

=CONCATENATE("A",B1)

dá o texto A1.

Portanto, para obter a célula A1, você seria capaz de usar:

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

Só que a função CONCATENATE() agora é um pouco longa, mas não se preocupe! Você pode usar &:

=INDIRECT("A"&B1)

Funciona tão bem.

Se você tiver algo mais complexo como o C em A1 e 32 Em B1, para se referir à célula C32, Você pode:

=INDIRECT(A1&B1)

O que fornece =INDIRECT("C"&"32"), =INDIRECT("C32") e finalmente =C32

33
Jerry

`INDIRETO 'é a função que você precisa usar.

Do documentação :

Sintaxe:

INDIRETO (Ref; A1)

Ref representa uma referência a uma célula ou a uma área (em forma de texto) para a qual retornar o conteúdo.

A1 (opcional) - se definido como 0, a notação R1C1 é usada. Se este parâmetro estiver ausente ou definido com outro valor que 0, a notação A1 será usada.

Exemplo

= INDIRETO (A1) é igual a 100 se A1 contiver C108 como referência e a célula C108 contiver um valor de 100.

= SOMA (INDIRETO ("a1:" & ENDEREÇO ​​(1; 3))) totaliza as células na área de A1 até a célula com a propriedade endereço definido pela linha 1 e coluna 3. Isso significa que a área A1: C1 é totalizada.

6
SeanC

= DESLOCAMENTO (B1, 0, 1)

OFFSET (referência, deslocamento de linha, deslocamento de coluna, padrão de altura da área para 1, padrão de largura da área para 1)

Exemplo 1. Temos tabela de multiplicação e precisamos encontrar a resposta por algum motivo estúpido com OFFSET.

   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

Digamos que precisamos de 2x4 = OFFSET (A1, 2, 4) ou, neste caso, alternar os números funciona igualmente bem = OFFSET (A1, 4, 2)

Exemplo 2. Vamos calcular a soma de todos os números na tabela de multiplicação anterior que são para 2 ou mais. = SUM (OFFSET (A1, 2, 2, 4, 4))

3
mhv