AS EMPRESAS ESTÃO "DESESPERADAS" POR ESTE TIPO DE PROFISSIONAL... - VOCÊ É UM DELES?

MEGA FORMAÇÃO EM INFRAESTRUTURA DE TI - O Conhecimento que Vira Dinheiro - CLIQUE AQUI

Você está em: PrincipalArtigosASP.NET › Capítulo 15 : 04
Quer receber novidades e e-books gratuitos?
« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
ASP.NET - CURSO COMPLETO
Autor: Júlio Battisti
Lição 123 - Capítulo 15 - Acessando dados de uma planilha do Excel

Vamos apresentar um exemplo, onde utilizaremos um controle DataGrid, para exibir dados de uma planilha do Excel: C:\Meus documentos\Clientes.xls. Esta planilha contém dados que foram importados da tabela Clientes, do banco de dados NorthWind.mdb. Não importamos todas as colunas. Para simplificar o exemplo, foram importadas apenas as seguintes colunas:

• CódigoDoCliente
• NomeDaEmpresa
• Endereço
• Cidade
• País
• Telefone

Na Listagem 15.3 temos o código para o exemplo proposto. Após a listagem apresentaremos mais alguns comentários sobre o exemplo.

Listagem 15.3 – Acessando dados de uma planilha do Microsoft Excel.

<html>
<%@ Page Language="C#" %>
   <%@ Import  Namespace="System.Data.OleDb" %>
   <%@ Import Namespace="System.Data"  %>
   <%@ Import Namespace="System"  %>
<script language="C#"  runat="server">
                   protected void Page_Load(Object Src, EventArgs  E)
                   {
               string  strConn;
               strConn  = "Provider=Microsoft.Jet.OLEDB.4.0;" +
               "Data Source=C:\\Meus  documentos\\Clientes.xls;" +
               "Extended  Properties=Excel 8.0;";
//You must use the $ after the object you  reference in the spreadsheet
OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT  * FROM [Plan1$]", strConn);
            DataSet  myDataSet = new DataSet();
            myCommand.Fill(myDataSet,  "Clientes");
               
               MinhaGrade.DataSource  = myDataSet.Tables[0].DefaultView;
               MinhaGrade.DataBind();
                   }
</script>
<body>
               <B>
               <asp:Label 
                           id=Label1 
                           runat="server"
               >
   <HR>
                           Dados da planilha  C:\Clientes.xls
   <HR>
               
   </asp:Label>
               </B>
               
               <asp:DataGrid 
                           id=MinhaGrade
                           HeaderStyle-BackColor="#c0c0c0"
                           HeaderStyle-Font-Bold="True"
                           runat="server"
               />
</body>
   </html>

Digite o código da Listagem 15.3 e salve o mesmo em um arquivo chamado chap15ex3.aspx, na pasta chap15, dentro da pasta wwwroot, conforme descrito no item: “Check List para acompanhar os exemplos deste livro”, no Capítulo 6.

Para acessar esta página utilize o seguinte endereço:

http://localhost/chap12/chap15ex3.aspx

Ao carregar a página você obtém o resultado indicado na Figura 15.7, onde são exibidos os dados da planilha Clientes.xls.

Curso Completo de ASP.NET - Júlio Battisti
Figura 15.7 Lista de países já preenchida.

Comentários sobre o código do exemplo:

• Para fazer a conexão com uma planilha do Excel, utilizamos um objeto OleDbConnection, porém na definição da String de Conexão, utilizamos um atributo a mais:
string strConn;
strConn  = "Provider=Microsoft.Jet.OLEDB.4.0;" +
           "Data Source=C:\\Meus  documentos\\Clientes.xls;" +
           "Extended  Properties=Excel 8.0;";

O atributo “Extended Properties=Excel 8.0” é que informa que o arquivo está no formato do Excel.

• Para acessar os dados da primeira plainlha – Plan1, definimos um comando SQL:

OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [Plan1$]", strConn);

Observe que após o nome da planilha, devemos colocar um sinal de cifrão – [Plan1$]

Poderíamos, também, selecionar colunas individuais da planilha. Para isso basta alterar o comando SQL. Por exemplo, se quiséssemos exibir apenas as colunas “Código do Cliente” e “Nome da Empresa”, utilizaríamos o seguinte comando:

OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT [Código do Cliente],
[Nome da Empresa] FROM [Plan1$]", strConn);

Com este comando obteríamos o resultado indicado na Figura 15.8

Curso Completo de ASP.NET - Júlio Battisti
Figura 15.8 Acessando apenas algumas colunas.

• O restante do código não tem maiores novidades. O único detalhe diferente dos exemplos anteriores é que, ao invés de criar explicitamente um objeto do tipo DataView, utilizamos a propriedade DefaultView, da primeira (e única) tabela, da coleção de tabelas do objeto DataSet, para definir a propriedade DataSource do objeto DataGrid:

MinhaGrade.DataSource  = myDataSet.Tables[0].DefaultView;
MinhaGrade.DataBind(); 

Este exemplo demonstra o poder e flexibilidade das classes do namespace System.Data.OleDb. Poderíamos, sem maiores problemas, exibir na mesma página ASP.NET, dados de um banco de dados do SQL Server, de uma tabela de um arquivo do Microsoft Access, de uma planilha do Microsoft Excel e de uma planilha do Lotus 123. Poderíamos inclusive fazer cálculos com dados das diferentes fontes e salvar os resultados em um banco de dados do ORACLE. Esta flexibilidade e possibilidade de trabalhar com diferentes formatos de dados é que torna o Framework .NET uma opção muito interessante como plataforma para o desenvolvimento de aplicações empresarias, quer sejam aplicações Web, quer sejam aplicações tradicionais.

« Lição anterior Δ Página principal ¤ Capítulos Próxima lição »
Quer receber novidades e e-books gratuitos?

MEGA FORMAÇÃO EM INFRAESTRUTURA DE TI

(Online, Vitalício, Prático e Atualizado)!

  • Chega de ser Ignorado pelo Mercado!

  • A vida não vai Melhorar Sozinha!

  • Quem domina infraestrutura, domina o Mercado.

  • Com esta Formação você vai Dominar o Conhecimento e torne-se o Profissional que as Empresas estão Buscando, "desesperadamente", mas não estão encontrando.

NÃO PROCURE VAGAS, SEJA PROCURADO!

 

Curso Completo de Excel - Curso Online com Certificado - 925 Vídeo Aulas - 22 Cursos - 120:42 horas

 

Para Todos os Detalhes, Acesse:

Curso Completo de Excel - Curso Online com Certificado - 925 Vídeo Aulas - 22 Cursos - 120:42 horas

 

https://juliobattisti.com.br/curso-infra-ti.asp

 

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2025 ®

LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO

DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI