Joaozava Postado Junho 19, 2005 Denunciar Share Postado Junho 19, 2005 Olá,alguém sabe me dizer como posso fazer para inserir dados em uma planilha do excel atravez de uma pagina ASP.net????Valeu!Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Junho 19, 2005 Denunciar Share Postado Junho 19, 2005 Se for um arquivo do Excel no estilo tabela (a primeira linha com os "campos" e as demais com os "registros"), você pode utilizar ADO.NET para isso (veja aqui: http://www.dotnetjohn.com/articles.aspx?articleid=54).Já se a sua necessidade for alterar arquivos arbitrários, então você vai ter que recorrer a automação do Excel. Isso vai exigir que o Excel esteja instalado no servidor, porém também vai te dar total liberdade para controlá-lo e realizar as alterações. Entretanto, fiz um teste aqui e não consegui instanciar um objeto Excel.Application. Aparece um erro dizendo que não há permissão para isso (fiz todas as configurações que encontrei, porém não teve jeito). Se quiser tentar aí, faça um teste com:Dim x As Object = Server.CreateObject("Excel.Application")Se isso funcionar, é só você utilizar os métodos que esse objeto disponibiliza (fazendo referência ao Microsoft Excel você vai poder saber quais são os métodos).Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joaozava Postado Junho 20, 2005 Autor Denunciar Share Postado Junho 20, 2005 Olá Graymalkin,Minha necessidade é alterar alterar arquivos arbitrários, portanto eu estava tentanto fazer dessa maneira: Dim xl As New Microsoft.Office.Interop.Excel.Application Dim xlw As Microsoft.Office.Interop.Excel.Workbook 'Abrir o arquivo do Excel xlw = xl.Workbooks.Open("c:\teste\teste.xls") ' definir qual a planilha de trabalho xlw.Sheets("Plan1").Select() 'Exibe o conteúdo da célula na posição 2,3 ' variavel = xlw.Application.Cells(2, 3).Value lbl.text = xlw.Application.Cells(2, 3).Value Fechar a planilha sem salvar alterações xlw.Close(False) ' Liberamos a memória xlw = Nothing xl = Nothing Mas mostra um erro de acesso negado, como você disse, dizendo que o ASP.NET não está autorizado a acessar o recurso solicitadoveja um trecho do erro:Acesso negado. Descrição: Ocorreu uma exceção não tratada durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código. Detalhes da Exceção: System.UnauthorizedAccessException: Acesso negado. você conhece alguma outra maneira de fazer isso???Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Junho 21, 2005 Denunciar Share Postado Junho 21, 2005 Existe também o OWC (Office Web Components) que é bem semelhante a esse método (automação), mas não testei se ele funciona via ASP.NET sem dar o mesmo problema de permissão. Faça um teste aí e qualquer coisa dá um grito que a gente vê o que pode fazer.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Joaozava Postado Junho 30, 2005 Autor Denunciar Share Postado Junho 30, 2005 Ola Graymalkin,Depois de muito procurar, consegui fazer funcionar....ufa...foi so colocar a seguinte tag dentro do bloco <system.web> no web.config:<identity impersonate="true" />Isso faz com que o usuário que estiver configurado no IIS assuma a identidade, ao invés de usar o usuário aspnet.Se alguém precisar, ta ai...Abraços... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Julho 1, 2005 Denunciar Share Postado Julho 1, 2005 Boa, João! Vou fazer um teste aqui depois também.Valeu,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Joaozava
Olá,
alguém sabe me dizer como posso fazer para inserir dados em uma planilha do excel atravez de uma pagina ASP.net????
Valeu!
Abraços
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.