Notifications
Clear all

Concatenar resultado de dois Procv para retornar matriz

11 Posts
4 Usuários
0 Reactions
2,508 Visualizações
(@victtaum)
Posts: 12
Active Member
Topic starter
 

Boa noite a todos.

Estou enfrentando uma dificuldade que ainda não achei nenhuma solução.

Estou usando a seguinte fórmula:

=PROCV(PROCV($C$3;Alunos!$A:$H;3;FALSO);CONCATENAR(PROCV($I$7;Referência!$A$2:$E$13;2;FALSO);PROCV(Fundamental!A12;Referência!$A$15:$B$25;2;FALSO));6;FALSO)

Quero que o concatenar em verde junte o resultado dos dois pedaços do endereço de uma outra planilha e use como a matriz da minha pesquisa. Porém, o resultado do cálculo é "#VALOR!".

Se eu separo o Concatenar em verde com os dois procv e coloco tudo em uma célula aparece o endereço que eu quero, conforme abaixo:
C:BoletimFundamental1 - Primeiro Bimestre[01 - Primeiro Ano.xlsx]Artes'!$B$7:$H$46

Porém, meu resultado não é exibido.

Alguém sabe me dizer o que eu posso fazer para conseguir?

Detalhe, quero fazer isso com procv porque senão só imagino uma forma de fazer isso, e é com uma trilhões de "SE", aproximadamente uns 576, não estou certo dessa quantia. Isso pq eu teria que selecionar o bimestre, o ano de do primeiro ao nono ano e também do primeiro ao terceiro do médio, e dentro de cada planilha ainda existe aproximadamente 12 matérias para cada turma. Então são 12 matérias vezes 12 turmas, vezes 4 bimestres. Certeza que isso não cabe dentro de uma célula.

 
Postado : 26/03/2015 7:01 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Por favor poste um modelo da sua planilha, acredito ser possível, mas não concatenando, pois uma concatenação não devolve um intervalo...

Não esqueça de compactar seu anexo.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 26/03/2015 7:26 pm
(@edcronos)
Posts: 1006
Noble Member
 

acredito que vc quer pegar a referecia de acordo com outra referencia

tipo uma formula que implementei em minha planilha
=SEERRO(ÍNDICE(INDIRETO(ÍNDICE($A$15:$J$15;1;CORRESP(AQ3;$A$12:$J$12;0))&3000&":"&ÍNDICE($A$15:$J$15;1;CORRESP(AQ3;$A$12:$J$12;0))&$F$10);CORRESP(AR$3;INDIRETO(C15&3000&":"&C15&$F$10);0);1);"N")

eu não lido bem com procv, somente uso indice e corresp
para montar referencia de endereço vai ter que usar indireto

talvez sua formula só esteja faltando o indireto, mas como falei nem lembro como usar procv

para ajudar tem que ter um exemplo de sua planilha com todos os dados requeridos

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 26/03/2015 8:23 pm
(@victtaum)
Posts: 12
Active Member
Topic starter
 

Fernando,

Ai vão as planilhas.

Dentro da pasta Boletim tem uma pasta de trabalho do Excel e duas pastas, sendo cada pasta responsável pelo lançamento das notas individuais de cada aluno, em cada matéria, de cada turma (ano).

A fórmula que eu estou querendo utilizar será colocada no campo D11 do Arquivo Boletim.xlsx

Agradeço desde já.

Edcronos,

Eu não consegui com o indireto, não sei se por mau uso, mas algo que creio que atrapalhe é que os dados serão pegos em outra arquivo, que normalmente estará fechado, creio que isso seja uma limitação para o indireto, estou certo?

 
Postado : 27/03/2015 6:00 am
Issamu
(@issamu)
Posts: 605
Honorable Member
 

Olá!
Vi o seu arquivo e compreendo a lógica que você quer desenvolver, porém infelizmente eu acredito que não será possível fazer o relacionamento que você quer através de fórmulas somente, pois a única função que você poderia aplicar para reconhecer os textos da sua planilha de referência é INDIRETO, e como você percebeu, a função não vai trazer o resultado se a planilha estiver fechada.

Pelas minhas contas você tem 48 arquivos com 11 planilhas em cada, o que dá 528 planilhas no total. O que sugiro é desenvolver um código em VBA que copie as informações de cada planilha e cole num banco de dados no seu arquivo "Boletim". Não seria uma macro tão complexa, pois você pode adaptar as tabelas já montadas na planilha "referência" como próprias referências para ser usada nos laços de repetição do código (Precisaria tirar os colchetes nos caminhos do endereço para utilizar o texto da célula como caminho no código que vai executar a abertura do arquivo). O bom de ter um BD no arquivo é que seria possível realizar mais relatórios além do que você já montou do boletim.

Ou então, você pode desenvolver um código que abra somente o arquivo que você precisa consultar conforme aluno escolhido para trazer as informações.

Não sei se mais alguém tem alguma sugestão melhor, mas ao meu ver você vai ter que recorrer ao VBA.

Tente ai e qualquer dúvida continue postando.

Abraços!

Rafael Issamu F. Kamimura
Moderador Oficial Microsoft Community - MCC (Contribuidor do Microsoft Community)
http://zip.net/bjrt0X - http://zip.net/bhrvbR
Foi útil? Clique na mãozinha
Conheça: http://excelmaniacos.com/

 
Postado : 27/03/2015 6:58 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia Victtaum, eu confesso que não havia entendido que as referências seriam todas indiretas. Indicar o nome dos arquivos em células torna a necessidade das referencias serem indiretas, e assim, atingimos o limite da função indireto().

E mesmo que você decida deixar todos os arquivos abertos (seria uma solução), seu Excel iria consumir muitos recursos da máquina e ficar extremamente lento.

O ideal seria partir para um VBA que traga os dados para dentro do próprio sistema, ou até mesmo para um único arquivo (xlsb), não necessariamente o boletim.xlsx, assim vc o manteria leve. Se você usar um único arquivo externo, as referências podem ser diretas e assim funcionarem mesmo com ele fechado. Outra alternativa seria alimentar um Access e acessá-lo como fonte de dados externos.

Ou seja, como o Rafael disse, devido à complexidade da sua estrutura, VBA parece a melhor opção.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 27/03/2015 7:24 am
(@victtaum)
Posts: 12
Active Member
Topic starter
 

Entendo, fico chateado por um lado ahaha mas feliz por outro. Meu maior problema é que meu conhecimento de VBA é ctrl+c/ctrl+v. Alguém tem algum material de apoio pra eu estudar?

 
Postado : 27/03/2015 8:40 am
(@edcronos)
Posts: 1006
Noble Member
 

dei uma olhada no arquivo
achei um pouco confuso
eu uso uma tabela em minha planilha para informar posição e tamanho de setores para a planilha ficar o mais dinâmica possível e mesmo que mudem de nome e tamanho as macros formulas e formatações acompanham

vi que vc usa uma tabela para referenciar local e tamanho

mas ao me ver fica dificil administrar
pode ser muitos cursos e muitos aluno
uma planilha tem espaço o suficiente e recursos para juntar informações sem misturar as coisas

para fazer como vc quer o mais pratico é um formulario para cadastro e pesquisa usando macros
separar as planilha primeiro por data "ano", para facilitar buscas no histórico
depois fundamental, medio
e disciplina
quase como vc fez, mas juntando informações dentro de uma mesma aba
uma planilha tem milhares de linhas e colunas
claro que não é para usar todas mas pode se fazer um bom uso delas

bem não sou a melhor pessoa para falar sobre organização,
mas com arquivos tão fragmentados uma hora vai ficar dificil fazer a manutenção e administrar as informações
me desculpe se falei alguma besteira

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 27/03/2015 9:21 am
(@victtaum)
Posts: 12
Active Member
Topic starter
 

Edcronos,

Só não te... agradeço pessoalmente pq não posso. Você falou algo simples mas me fez pensar em algo novo. Se eu rever minha estrutura talvez tudo se solucione.

Eu sou bem leigo com VBA, e atualmente tenho um bloqueio com ele que preciso vencer, simplesmente quando me falam em VBA eu penso "ferrou...", mas vou me aprofundar nele, já que vira e mexe preciso dele.

De qualquer forma, vou tentar criar essa estrutura de outra forma e ver se consigo o que eu quero, se eu não precisar referenciar para outros arquivos, creio que meu problema tenha sido resolvido.

Agradeço!

 
Postado : 27/03/2015 12:31 pm
(@edcronos)
Posts: 1006
Noble Member
 

Sim é o primeiro passo

mas pela quantidade de informação a dar entrada e a pesquisar, não vejo como vc fugir muito de um formulario

imagina em uma fase de novas informações como o inicio de um ano, como seria difícil essa tarefa
ou até mesmo adição ou edição de informações tipo troca de salas ou troca de professores ou de horarios

nessas tarefas seria algo como adicionar uma linha ou coluna para informação
mas fazer manualmente é quase impossível

não esqueça de deixar linhas e colunas sobrando para adicionar novas informações se nescessario

algo como

pasta de trabalho 2015
aba do 1ª bimestre
coluna matricula aluno, colunas sobrando , Tabela Matemática, colunas sobrando, tabela português , colunas sobrando, tabela ciências , colunas sobrando ,...,

Somente é impossíveis até que alguém faça
A logica está presa na irracionalidade humana, e morta nos que se consideram donos da verdade.

"ALGUM MODERADOR ME EXPULSE DO FÓRUM POR FAVOR"

 
Postado : 27/03/2015 12:56 pm
(@victtaum)
Posts: 12
Active Member
Topic starter
 

Gostaria apenas de informar que consegui de outra forma. Eu criei quatro colunas (bimestres) para cada matéria na frente do nome de cada aluno, isso na planilha alunos. Com isso eu coloquei a referencia direta em cada célula de média, para que ela pegasse no devido arquivo a nota do aluno. Desse jeito eu não precisava mais ir direto para uma referencia externa pegar o Dado que eu quero, mas sim eu ia para uma referencia interna que aponta para uma externa. Problema resolvido!

Para melhor compreensão eu anexei novamente com a solução para vocês verem.

Agradeço a todos pela ajuda.

 
Postado : 30/03/2015 5:23 pm