Range Dinâmico
ao definir um nome (usando Ctrl+F3) ao invés de selecionar o range (que ficaria fixo) use as funções Desloc() e Cont.Valores(), combinadas...
eu escrevi coisas diferentes nas células B2 a B5 de uma planilha...
teclei Ctrl+F3 (ou Inserir > Nome > Definir) e defini um nome qualquer para o intervalo que vou criar
no campo refere-se a, eu escrevi a fórmula abaixo:
=DESLOC(Plan1!$B$2;0;0;CONT.VALORES(Plan1!$B:$B);1)
Detalhe 01: NADA MAIS PODERÁ ESTAR EM NENHUMA CÉLULA DA COLUNA B, pois se tiver algo ali, o cont.valores da coluna B não funcionará e pegará linhas a mais do range flexível, ou range variável, ou Range Dinâmico (como prefiro chamar)
Detalhe 02: o início da lista do range dinamico é sempre o primeiro item da lista, e não o seu cabeçalho, ok?
Detalhe 03: uma vez q um nome definido no excel passa a ter uma fórmula (com ou sem funções, não importa) este nome não mais aparecerá na lista do Ctrl+Y (ir para) nem ao lado da barra de fórmulas... para ver o resultado do range dinamico, deve-se voltar à definição de nomes e clicar no campo refere-se à, daí o range vai BRILHAR na planilha . . .
Detalhe 4: naum pode haver nada em cima da lista tb, exceto se for um título, mas neste caso, ver detalhe 5...
Detalhe 5: se vc tiver um titulo na sua lista nas células do excel, precisa usar um -1, pra não contá-lo no range dinamico
neste caso ficaria assim
=DESLOC(Plan1!$B$2;0;0;CONT.VALORES(Plan1!$B:$B)-1;1)
NOTA/EXTRA:
essa função, se bem utilizada, pode variar em linhas (como explicado acima) e/ou em colunas... fica aí um exercício pra quem quiser brincar de nomear áreas cujo tamanho mude...
----------------------------------
é possível usar um Nome Definido no Excel (seja dinâmico ou não) em qualquer função do excel, inclusive qdo as utilizamos matricialmente:
exemplos:
=SOMA(VENDAS)
=PROCV(vendedor;TabelaVendedores;ColunaSalario;0)
=soma((Produtos="Leite")*(TabelaVendedores=Vendedor)*(ValoresVenda>Limite)*ValoresVenda)
terminando com Ctrl+Shift+Enter
claro q pra esta ultima é necessário ter um conhecimento mais profundo de Excel no que diz respeito a condicionais, mas é praticamente uma SOMASE() com 3 critérios do tipo E...
e se usarmos o q eu chamo de Range Dinâmico, podemos fazer miséria com as fórmulas e funções...
Vantagem: Qualquer pessoa que ler a fórmula, terá mais facilidade em entendê-la, pois não é endereços e sim textos facilmente compreensíveis....
as dicas dadas acima, utilizam fórmulas em portugues...
Traduzindo as funções:
DESLOC é OFFSET
SOMA é SUM
PROCV é VLOOKUP
SOMASE() é SUMIF()[/list:u:2i93tdim]
Exemplo 1:
Se alguém quiser exemplo de rng dinamico com procv
crie um range dinamico chamado tabela, e na fórmula, use:
=desloc(Plan1!A1;1;0;cont.valores(Plan1!A:A);5)
Este Range Dinâmico é uma tabela que compreende um número variável de linhas, por um número fixo de colunas da planilha Plan1, ou seja,
Preencha A1 até E1 com títulos de coluna
Preencha A2 até E20 com valores de acordo com o cabeçalho
noutra plan, pode ser a plan2
Coloque na célula A2 a seguinte fórmula:
=procv(a1;tabela;5;0)
assim, td q vc escrever na célula A1, aparecerá o valor correspondente na célula A2...
Exemplo 2:
Foi definido um nome (use Ctrl+F3 para conferir). Este nome definido é o TblProduto e foi definido com a seguinte fórmula:
=DESLOC(Plan1!$L$1;1;0;CONT.VALORES(Plan1!$L:$L)-1;3)
Isso significa que a função DESLOC() pega como referência uma célula cujo endereço é L1, e a partir da célula DEBAIXO dela, iniciou um intervalo dinâmico de células.
Enfim... Isso significa que ao adicionar itens na tabela de produtos, o intervalo dinâmico já as incluirá, não sendo mais necessário alterar o conteúdo do nome definido, pois este é dinâmico.
Utilizei na tabela exemplo ao lado alguns PROCV() com testes de erro ( ÉERROS() ), e utilizei o range dinâmico TblProdutos no meio da função:
=PROCV($A2;Tblprodutos;2;0)
Vantagens:
1) LER a fórmula e entendê-la;
2) Para efeito de manutenção, não será mais necessário alterar o "alcance" do PROCV();
Desvantagens:
1) Ainda não enxerguei desvantagem... alguém se habilita?
O arquivo está anexado nesta postagem.
Quem tiver dúvidas, é só perguntar... temos verdadeiros mestres em Range Dinâmico por aqui!
ANEXOS BONS:
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 10/07/2009 3:23 pm