Identificar link de dados externo DDE

Boa tarde. Pessoal, no meu projeto tem uma planilha com um link externo DDE, cujos dados vem de uma outra planilha. No exemplo em anexo tem duas planilhas com dados diferentes (Dados1 e Dados2) que alimentam a planilha “Dados” de Teste-Dados.

Clicando no botão Trocar Base de Dados, depois em Modificar, eu posso tanto atualizar o local onde está o arquivo com os dados, quanto trocar de arquivo (no caso poderia ser Dados1 ou Dados2).

Ao clicar em Atualizar, a planilha “Dados” de “Teste-Dados”, imediatamente será alimentada com as informações do arquivo vinculado.

O que eu estou querendo é fazer aparecer na célula C4 em amarelo, o nome do Arquivo de dados externo ativo (DDE). Ou seja, se vincular com Dados1 na célula vai aparecer “Dados1” e se vincular com Dados2, na célula vai aparecer “Dados2”.

Obs.: provavelmente quando abrir o arquivo Teste-Dados.ods vai aparecer a mensagem:
image

Nesse caso basta clicar no botão e ir até o local onde estão os arquivos e vincular com Dados1 ou Dados2.

Teste-Dados.ods (12.9 KB)
Dados1.ods (11.7 KB)
Dados2.ods (12.3 KB)

Sugestão, coloque os dois arquivos vinculados (um em cada planilha) e use Validação para escolher o arquivo a vincular. E nas formulas utilize a função INDIRETO.


Veja na pratica:
Teste-Dados_GS.ods (18,0,KB)
Dados1_GS.ods (14,2,KB)
Dados2_GS.ods (14,5,KB)


Ao atualizar os Dados1 ou Dados2, deve ser salvo os arquivos, se o arquivo Teste-Dados estiver aberto, use Arquivo/Recarregar.

De fato @schiavinatto, essa alterantiva apresentada por vc funcionaria perfeitamente se fossem poucos arquivos. Mas no meu caso concreto, ao invés de Dados1 e Dados2, é gerado um arquivo para cada mês (Ex.: Set2024). Ou seja, para a minha situação essa solução já não é viável, tendo em vista que com o tempo seriam vários arquivos e teria que alterar/criar os vínculos constantemente.

De qualquer forma agradeço pela disposição!!!

1 Like

Ola @LPICC, poste um arquivo com um exemplo de uso da informação do arquivo vinculado.
Talvez com o uso da Função INDIRETO, de para desenvolver algo.

@schiavinatto, quase cheguei lá usando as funções EXT.TEXTO e FÓRMULA. O problema é que se mudar o Path do arquivo, a referência de início (35) na função EXT.TEXTO vai continuar a mesma e nesse caso o valor exibido serão os 6 caracteres seguintes, que possivelmente serão diferentes do nome da planilha. Se tiver como contar os caracteres do Path antes de iniciar o nome da planilha com os dados e usar isso na Função EXT.TEXTO, já resolveria o problema.

A fórmula na célula C4 ficou assim: =EXT.TEXTO(FÓRMULA($Dados.A1);35;6)

Segue o exemplo:

Teste-Dados.ods (13.6 KB)
Dados2.ods (12.3 KB)
Dados1.ods (11.7 KB)

1 Like

Tinha esquecido da função FÓRMULA…

=EXT.TEXTO(FÓRMULA($Dados.A1);LOCALIZAR(".ods";FÓRMULA($Dados.B1);1)-6;6)

Sendo 6 o tamanho padrão dos nomes dos arquivos ( Dados1 ou Dados2 )

Fiz uma última alteração na fórmula. Agora, ao invés de apenas 6 caracteres o tamanho do nome pode variar.

=EXT.TEXTO(FÓRMULA($Dados.A1);LOCALIZAR(“Dados”;FÓRMULA($Dados.A1);1);(LOCALIZAR(".ods"; FÓRMULA($Dados.A1)))-(LOCALIZAR(“Dados”; FÓRMULA($Dados.A1))))

Obrigado @schiavinatto pela força!!! :muscle:

Teste-Dados.ods (14.0 KB)
Dados1.ods (11.7 KB)
Dados - Set 2024.ods (13.1 KB)

1 Like