Início > Artigos > Modelo de Conexão para Excel em xls, xlsx e csv

Modelo de Conexão para Excel em xls, xlsx e csv

Neste artigo, iremos exemplificar o modo de conectar o sistema com um arquivo Excel, e como fazer o select (query) para extrair os dados do arquivo.
 
Primeiramente é necessário que nosso excel esteja bem formatado, isso é, que ele possua a mesma estrutura que uma tabela, com nome de campos na primeira linha, e os dados abaixo. Detalhe importante: o nome dos campos aconselhamos que não contenham espaços nem caracteres especiais.
 
Modelo de conexão para xls usando OLEDB:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Y:\mybi\BANCO.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";
 
Modelo de conexão para xlsx usando OLEDB:
Provider=Microsoft.ACE.OLEDB.12.0;DataSource=c:\\Temp\\source.xlsx;Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\";";
Onde: Data Source = Caminho que se encontra o arquivo.
 
Modelo de conexão para xlsx usando ODBC:
Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=y:\\mybi2014\\Ario.xlsx;
 
Para fazer a conexão no sistema, escolha o "Modo Conexão" OLEDB ou ODBC, e insira o modelo de conexão adequado na tela do sistema. Após isso, clique em "Testar Conexão". 
 
Ao fazer um select para testar, é necessário que o nome da tabela (que no caso é o nome da aba do excel) esteja especificado dentro do comando [$], ficando assim por exemplo: select * from [Plan1$]. 
 
O nome da aba deve ser pequeno, e recomendamos que não contenha caracteres especiais ou espaçoNesse caso do exemplo, temos o seguinte resultado:
 
Inserindo a String de Conexão e testando para um modelo de Excel em xls com OLEDB:
 
Resultado:
 
O mesmo processo deve-se fazer para um arquivo em .xlsx. Nesse caso, pode ocorrer do driver Ace. Oledb.12.0 não estar instalado no desktop. 
Ao clicar no botão "Testar Conexão", inserir o select e clicar no botão "OK", verifique se será apresentado a seguinte mensagem:
 
 
 
Em caso positivo, é necessário que se instale o provider especificado. Para instalar o provider, pode-se fazer o download diretamente do link: https://www.microsoft.com/en-us/download/details.aspx?id=13255 ou em outro site que tenha disponível o provider para o Ace.Oledb.12.0.
Após instalar o provider, execute novamente o teste de conexão. Deve ser mostrada a mensagem de "Teste realizado com sucesso". Caso não consigo conectar, orientamos instalar o "2007 Office System Driver: Data Connectivity Components" que pode ser baixado no link http://www.microsoft.com/en-us/download/confirmation.aspx?id=23734 e realizar o teste novamente.
 
Caso desejar não instalar o provider acima, teste a conexão do arquivo xlsx com o modo de conexão ODBC, no caso, ficando como no exemplo abaixo:
 
Deve ser retornado a mensagem de "Teste realizado com sucesso".
 

Conexão CSV:

Para criar uma conexão para CSV na versão Desktop do sistema, realizar o seguinte procedimento:

Tipo de conexão: Oledb

Conexão: Provider=Microsoft.ACE.OLEDB.12.0;Data Source=path;Extended Properties="text;HDR=Yes;Format=Delimited";


Exemplo de query: Select * from [NomeDoArquivo.csv]

 
 
Após configurar as conexões, para usá-las nos indicadores, seja Dashboard, seja BI, basta fazer os selects desejados e então construir normalmente os indicadores.