Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cintia_Ribeiro

[Resolvido] uso de planilha

Recommended Posts

Gelera, estou criando um sistema com C# que atualmente é utilizado planilhas de excel. Vou explicar mais ou menos como funciona p vcs poderem endenteder e me da uma luz. Tenho várias planilhas integradas, onde uma delas funcionar como base de dados p outras. Esses dados são copiados e colados no excel de um relatorio criado por um outro sistema via internet. Pois bem, o que eu queria é o seguinte, não fugir muito da maneira como já é feito. Queria saber se existe uma maneira de usar o GridView ou planilha msm p usuário copiar os dados desse outro sistema p sistema q estou desenvolvendo. Fazer realmente um copia e cola. Os dados são enormes e nao é viavel entrar um por um. Pensei em continuar com o copia/cola e depois jogar esses dados q estarão em um grid ou planilha p banco de dados.

 

Não sei se consegui explicar legal, mas estou no aguardo, se alguem poder me ajufar eu agradeço muuuuuuuuuuuuuuiiiiiiiiiiiiiittttttttooooooo

Compartilhar este post


Link para o post
Compartilhar em outros sites

No meu caso teria que ser o oposto, exporta do excel para o grid

private void btnImportExcelToGrid_Click(object sender, System.EventArgs e)
{
String strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=C:\\Book2.xls;" +
"Extended Properties=Excel 8.0;";

DataSet ds = new DataSet();
//You must use the $ after the object
//you reference in the spreadsheet
OleDbDataAdapter da = new OleDbDataAdapter
("SELECT * FROM [sheet1$]", strConn); 

//da.TableMappings.Add("Table", "ExcelTest");

da.Fill(ds);
DataGrid2.DataSource = ds.Tables[0].DefaultView;
DataGrid2.DataBind();
}

fonte: http://dotnetguts.blogspot.com/2006/10/import-excel-to-datagrid-aspnet.html

 

Edit: testei e funcionou de primeira, ambiente visual studio 2010, office 2007, XP sp3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse codigo funcionou perfeitinho, só tem um problema. Tenho q fazer um upload primeiro do arquivo antes de jogar p grid, pq irei usar varios arquivos diferentes salvo em lugares diferentes. Não sei como pego o caminho do arquivo. Tentei, mas o maximo q consegui foi fileupload1.filename q retorna o nome do arquivo e nao o caminho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse codigo funcionou perfeitinho, só tem um problema. Tenho q fazer um upload primeiro do arquivo antes de jogar p grid, pq irei usar varios arquivos diferentes salvo em lugares diferentes. Não sei como pego o caminho do arquivo. Tentei, mas o maximo q consegui foi fileupload1.filename q retorna o nome do arquivo e nao o caminho.

vv tem que salvar o arquivo postado em algum lugar no seu servidor:

http://www.ecode10.com/artigo/133/ASP.NET+2.0+FileUpload.aspx

 

ou se preferir utilize o controle ajax AsyncFileUpload

http://www.codeproject.com/KB/ajax/AsyncFileUpload.aspx

http://www.aspsnippets.com/Articles/Using-ASP.Net-AJAX-Control-Toolkits-AsyncFileUpload-Control.aspx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeitinho... Só mais uma coisa. quando eu salvar esses dados no meu banco não quero que ele peggue todoas as colunas. Tipo tenho 5 colunas, mas so quero salvar aa 1,3 e 5. Isso é possivel?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perfeitinho... Só mais uma coisa. quando eu salvar esses dados no meu banco não quero que ele peggue todoas as colunas. Tipo tenho 5 colunas, mas so quero salvar aa 1,3 e 5. Isso é possivel?

qdo. for enviar para o comando INSERT ou para a classe de inserção selecione no DataTable as colunas que deseja, exemplo:

foreach (DataRow iDr in ds.Tables[0].Rows)
{
  iDr[1].ToString()
}

ou

foreach (DataRow iDr in ds.Tables[0].Rows)
{
  iDr["NomeDaColuna"].ToString()
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.