Notifications
Clear all

Conciliar dados entre duas Planilhas com Formulário

7 Posts
3 Usuários
0 Reactions
1,970 Visualizações
(@mgrifo)
Posts: 26
Eminent Member
Topic starter
 

Prezados,
Diariamente preciso "linkar" informações/dados (linhas) entre duas listas/Base de dados que estão em duas planilhas distintas, tipo um processo de conciliação. Estas plans não possuem um dado comum entre elas, logo não dá pra fazer um procv( ) e tudo tem que ser na base visual. Como são bastantes dados por dia e já existem diversos valores antigos, isto consome um bom tempo.
Logo, imaginei em criar um userform com dois listbox (ou listviews) onde sejam carregados, após um filtro, os dados da 1a planilha e da 2a planilha em cada controle(list), respectivamente, com um botão no meio dos dois, onde após identificar e selecionar, em cada listbox, os itens que se correspondam, ao clicar neste botão, na 2a planilha seja atribuído o nro (ID) que do dado que existe na 1a planilha, assim criando um item comum entre as listas.
O problema é q. não sei como fazer um código pra localizar na 2a plan o respectivo item que está selecionado no listbox e jogar na linha correspondente o tal ID carregado no form.
Alguém teria algum exemplo q faz isto pra postar aqui ou uma ideia melhor de como eu posso proceder?

A base de dados está simplificadamente exemplificada abaixo:
Plan1 (Origem do ID)
ID ------ Data ------ Valor - Descrição
101 - 01/05/2016 --- 10.000 - - AAAAAA
102 - 01/06/2016 --- 20.000 - - BBBBBB
103 - 01/06/2016 --- 30.000 - - CCCCC
104 - 01/07/2016 --- 20.000 - - DDDDD

Plan2 (Destino do ID)
------ Data ---- Valor - Descrição----------ID------
01/05/2016 --- 1.000 - - AAAAAA - a ser atribuido Ex(104)
01/06/2016 --- 2.000 - - BBBBBB - a ser atribuido Ex (102)
01/06/2016 --- 3.000 - - CCCCC - a ser atribuido Ex (104)
01/07/2016 --- 2.000 - - DDDDD - a ser atribuido Ex (102)

Grato e no aguardo
MGrifo

 
Postado : 31/10/2016 9:25 am
(@mprudencio)
Posts: 2749
Famed Member
 

Se os itens forem unicos um Procv Resolve

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 31/10/2016 3:06 pm
(@mgrifo)
Posts: 26
Eminent Member
Topic starter
 

Prudencio e demais,
Como escrevi na explicação não dá pra fazer procv(), corresp(), índice() etc,etc.
Não existe um item único na segunda planilha que seja correspondente ao nenhum dado da 1a planilha.
Este é o grande trabalho que tenho que fazer todo o dia na mão e no visual, atribuir o ID da 1a para a(s) linha(s) aplicável(eis) da 2a plan.

Alguém teria um exemplo de rotina que preencha um listbox com dados de uma lista de uma plan e transfira o dado selecionado no listbox para uma determinada linha noutra planilha?

Grato

 
Postado : 31/10/2016 7:42 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Nao precisa preencher uma listbox para transferir para a planilha, e dois trabalhos.

E como vc ter que levar uma carga para São Paulo saindo do Rio de Janeiro e para entregar em São Paulo vc vai a Curitiba primeiro.

E uma analogia um tanto absurda mas é exatamente isso que vc faz qdo carrega os dados na listbox para depois tranferir para sua planilha de destino.

Disponibilize um arquivo que fica mais facil resolver.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 01/11/2016 5:51 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Veja o anexo se ajuda.

Att

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

 
Postado : 01/11/2016 2:18 pm
(@mgrifo)
Posts: 26
Eminent Member
Topic starter
 

Grande Alexandre,
Muito obrigado por me dar o ponta pe inicial, para implantacao da soluçao. Muitas vezes e só isto mesmo que precisamos pra depois andarmos por nós mesmos.
Vc captou bem o conceito e embora nao tenha sido exatamente o q eu queria ate me deu uma ideia adcional.q nao tinha pensado.

Prezados do forum, estou aperfeiçoando o modelo com diversas outras funcionalidades. Mas pra poder acabar só preciso implementar a seguinte funcionalidade:

Como na versao real cada listbox ira atuar sobre listas/bases de dados com muitas linhas, imaginei de filtrar os dados e deixar exibidos no listbox apenas os itens que atendam a um filtro (data inicial, vazio, texto, etc etc).
O problema é q. ao filtrar os dados a propriedade ListIndex de cada linha deixa de ser correspondente literal à posiçao de cada dado na planilha de origem.

Como poderia fazer pra identificar / cada item sem depender da propriedade listindex?
Grato

 
Postado : 02/11/2016 10:50 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

embora nao tenha sido exatamente o q eu queria

Sinto muito eu não consegui imaginar sua real dúvida :(

imaginei de filtrar os dados

Caso persista com essa ideia, então (via VBA), mande esse resultado para uma guia auxiliar depois atualize sua guia com o resultado da guia auxiliar.

Att

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

 
Postado : 03/11/2016 5:22 am