Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Este artigo passo a passo demonstra como apresentar os dados de uma folha de cálculo do Excel através de uma página ASP.NET (.aspx) utilizando o Visual C#. NET.
Inicie o Microsoft Excel e, em seguida, crie uma nova folha de cálculo.
Adicione as seguintes informações para a nova folha de cálculo para criar uma base de dados simples do Excel:
Reduzir esta tabelaExpandir esta tabela
UM
B
1
Nome
Apelido
2
Gonçalo
Moreira
3
Katie
Jordânia
Nota : Apesar dos dados começarem a célula A1 neste exemplo, pode adicionar dados a todas as células adjacentes na folha de cálculo.
Realce as linhas e colunas onde residem os dados.
No menu Inserir , aponte para Nome e, em seguida, clique em Definir .
Na caixa de texto nomes no livro , escreva myRange1 e, em seguida, clique em OK .
No menu ficheiro , clique em Guardar . Na lista Guardar em , seleccione a raiz do servidor Web (que é normalmente C:\InetPub\Wwwroot\). Na caixa de texto nome do ficheiro , escreva DadosExcel.xls . Clique em OK .
Este exemplo de código demonstra como consultar e apresentar informações numa folha de cálculo do Excel. O código seguinte utiliza a folha de cálculo que criou na secção anterior.
Abra o Microsoft Visual Studio .NET. O Visual Studio .NET integrada Development Environment (IDE) é apresentada.
No menu ficheiro , aponte para Novo e, em seguida, clique em projecto .
Na caixa de diálogo Novo projecto , em Project Types , clique em Visual C# Projects . Em modelos , clique em ASP.NET Web Application .
Na caixa de diálogo Novo projecto , localize as caixas de texto Nome e localização . Repare que a caixa de texto nome não está disponível (aparece a cinzento ou desactivada). A caixa de texto de localização contém o seguinte texto (ou outra semelhante):
http://localhost/WebApplication1
Substitua o texto na caixa de texto de localização com http://localhost/ExcelCSTest e, em seguida, clique em OK . É criado um novo projecto, que inclui um formulário da Web denominado WebForm1.aspx.
No IDE do .NET no Visual Studio, localize a janela Solution Explorer. Se não conseguir localizar, clique em Solution Explorer , no menu Ver .
No Solution Explorer, clique com o botão direito do rato em WebForm1.aspx e, em seguida, clique em do Estruturador de vistas para apresentar o estruturador para o aspecto da página. O estruturador permite-lhe adicionar controlos e manipular o aspecto da página.
Localize a caixa de ferramentas. Dependendo das definições de IDE Option, a caixa de ferramentas pode aparecer como uma janela ou um botão (que aparece frequentemente no lado esquerdo do IDE). Se não conseguir localizar a caixa de ferramentas, clique em caixa de ferramentas no menu Ver .
Se a caixa de ferramentas aparece como um botão, mova o ponteiro sobre o botão para que sejam apresentado o conteúdo da caixa de ferramentas.
Quando a vista de um formulário da Web designer está activa, a caixa de ferramentas está dividida em secções, incluindo os formulários da Web, componentes, HTML e outras secções. Clique na secção Web Forms.
Na secção Web Forms da caixa de ferramentas, clique em DataGrid e, em seguida, arraste-o para o estruturador para WebForm1.
Clique com o botão direito do rato em WebForm1.aspx e, em seguida, clique em Código para visualizar a origem da página de código.
Adicione as seguintes instruções na parte superior do código - atrás de página, acima da secção espaço de nomes:
using System.Data.OleDb;
using System.Data;
Realce o código seguinte, clique com o botão direito do rato no código e, em seguida, clique em Copiar . Em WebForm1.aspx.cs, cole o código para o evento Page_Load :
// Create connection string variable. Modify the "Data Source"
// parameter as appropriate for your environment.
String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + Server.MapPath("../ExcelData.xls") + ";" +
"Extended Properties=Excel 8.0;";
// Create connection object by using the preceding connection string.
OleDbConnection objConn = new OleDbConnection(sConnectionString);
// Open connection with the database.
objConn.Open();
// The code to follow uses a SQL SELECT command to display the data from the worksheet.
// Create new OleDbCommand to return data from worksheet.
OleDbCommand objCmdSelect =new OleDbCommand("SELECT * FROM myRange1", objConn);
// Create new OleDbDataAdapter that is used to build a DataSet
// based on the preceding SQL SELECT statement.
OleDbDataAdapter objAdapter1 = new OleDbDataAdapter();
// Pass the Select command to the adapter.
objAdapter1.SelectCommand = objCmdSelect;
// Create new DataSet to hold information from the worksheet.
DataSet objDataset1 = new DataSet();
// Fill the DataSet with the information from the worksheet.
objAdapter1.Fill(objDataset1, "XLData");
// Bind data to DataGrid control.
DataGrid1.DataSource = objDataset1.Tables[0].DefaultView;
DataGrid1.DataBind();
// Clean up objects.
objConn.Close();
No menu ficheiro , clique em Guardar tudo para guardar os ficheiros de projecto.
No menu criar , clique em criar para criar o projecto. Isto prepara o código na página de código para que possa ser executado.
No Solution Explorer, clique com o botão direito do rato em WebForm1.aspx e, em seguida, clique em View in browser para executar o código.
O código de exemplo neste artigo utiliza o Microsoft Jet OLE DB Provider para aceder a folha de cálculo do Excel. Este código utiliza a seguinte cadeia de ligação para ligar a folha de cálculo:
// Create connection string variable. Modify the "Data Source"
// parameter as appropriate for your environment.
String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + Server.MapPath("../ExcelData.xls") + ";" +
"Extended Properties=Excel 8.0;";
como indicarem os comentários, terá de modificar as informações de caminho para a folha de cálculo específica do Excel. Além disso, também deve definir o valor do parâmetro Propriedades expandidas para ligar correctamente o ficheiro.
Repare que a cadeia de ligação utiliza a função Server.MapPath . Esta função tem um caminho que é relativo ao Microsoft (IIS) para um ficheiro e devolve um caminho de disco rígido para esse ficheiro. Por exemplo, na secção Create Sample Excel Spreadsheet, cria DadosExcel.xls no directório raiz da Web, que está normalmente localizado em C:\Inetpub\Wwwroot. Isto também cria uma subpasta chamada ExcelCSTest na pasta Wwwroot e um ficheiro denominado WebForm1.aspx dentro da pasta ExcelCSTest.
Neste exemplo, o caminho do ficheiro no disco rígido é da seguinte forma:
Web Root (which contains ExcelData.xls)
- ExcelCSTest (which contains WebForm1.aspx)
neste caso, o caminho relativo da página WebForm1.aspx para o ficheiro DadosExcel.xls é ".../ DadosExcel.xls ". O ".../ "caracteres informam o IIS para subir o nível de uma pasta. Por conseguinte, o código
Server.MapPath("../ExcelData.xls")
devolve a seguinte cadeia:
C:\Inetpub\Wwwroot\ExcelData.xls
Não é necessário utilizar Server.MapPath . Pode também permanentemente de código estas informações para um caminho específico ou pode utilizar qualquer método para fornecer a localização do ficheiro Excel no disco rígido.
Para obter informações adicionais sobre como aceder a ficheiros Excel com ASP.NET, clique os números de artigo existente abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft:
307029
(http://support.microsoft.com/kb/307029/EN-US/
)
COMO: Transferir dados XML para o Microsoft Excel 2002 utilizando o Visual C# .NET
306023
(http://support.microsoft.com/kb/306023/EN-US/
)
COMO: Transferir dados para um livro do Excel utilizando o Visual C# .NET
Para obter informações adicionais sobre como utilizar ADO.NET, clique os números de artigo existente abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft:
306636
(http://support.microsoft.com/kb/306636/EN-US/
)
COMO: Ligar a uma base de dados e executar um comando utilizando o ADO.NET e Visual C# .NET
314145
(http://support.microsoft.com/kb/314145/EN-US/
)
COMO: Preencher um objecto de DataSet a partir de uma base de dados utilizando o Visual C# .NET
307587
(http://support.microsoft.com/kb/307587/EN-US/
)
COMO: Actualizar uma base de dados de um objecto de DataSet utilizando o Visual C# .NET
Nota : os exemplos de empresas, organizações, produtos, nomes de domínio, endereços de correio electrónico, logótipos, pessoas, locais e eventos aqui mencionados são fictícios. Nenhuma associação com qualquer empresa, organização, produto, nome de domínio, endereço de correio electrónico, logótipo, pessoa, locais ou eventos é intencional ou deve ser inferida.
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 306572
(http://support.microsoft.com/kb/306572/en-us/
)
Qual foi o esforço que despendeu pessoalmente para utilizar este artigo?
Muito baixo
Baixo
Moderado
Elevado
Muito elevado
Diga-nos porquê e o que podemos fazer para melhorar estas informações
Obrigado! Os seus comentários são utilizados para ajudar-nos a melhorar o conteúdo do nosso suporte. Para obter mais opções de assistência, visite a Home Page de Ajuda e Suporte.