sr.silva 1 Denunciar post Postado Março 1, 2009 Olá! Através de uma consulta no banco, utilizo o código abaixo na criação de um *.xls. Porém estou tendo problemas no momento de "salvar" o arquivo. Na execução do método Save(), o mesmo abre uma caixa de "Salvar como" e salva o arquivo na execução do próprio método. Salvando assim 2 arquivos, um com o nome dado no código abaixo e outro com o nome fornecido na "caixa" de "Salvar como". A dúvida é: Como salvar apenas um arquivo? []s Excel.ApplicationClass excel = new Excel.ApplicationClass(); excel.Application.Workbooks.Add(true); DataTable table = Negocio.Consultar().Tables[0]; int cIndex = 0; foreach( DataColumn col in table.Columns ) { cIndex++; excel.Cells[1, cIndex] = col.ColumnName; } int rIndex = 0; foreach (DataRow row in table.Rows) { rIndex++; cIndex = 0; foreach (DataColumn col in table.Columns) { cIndex++; excel.Cells[rIndex + 1, cIndex] = row[col.ColumnName].ToString(); } } string s; s = "Inventario_" + cmbInventario.Text + "_" + DateTime.Today.Date.ToShortDateString().Replace("/", "_") + ".xls"; excel.Save(s); Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Março 1, 2009 Estranho, eu fiz um projeto aqui e adicionei somente isso: ApplicationClass excel = new ApplicationClass(); excel.Application.Workbooks.Add(true); excel.Save(@"C:\Guilherme\Teste.xls");E ele salva sem problemas. Você adicionou referência a DLL Microsoft.Office.Interop.Excel, certo?Qual a versão do seu Excel e Windows? Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 2, 2009 As referências que tenho: - Excel - Microsoft.Office.Core - Microsoft.Office.Interop.Excel(11.0) - Windows XP Professional - Office 2003 V.11 Porém se eu adicionar a referencia [ Microsoft.Office.Interop.Excel(11.0) ], ao compilar gera o seguinte erro: An assembly with the same identity 'Microsoft.Office.Interop.Excel, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' has already been imported. Try removing one of the duplicate references. c:\Arquivos de programas\Microsoft Visual Studio 9.0\Visual Studio Tools for Office\PIA\Office11\Microsoft.Office.Interop.Excel.dll //edit Se utilizarmos o script de criação, ele cria normalmente. Porém executando o código abaixo, ele abre a caixa de "Salvar Como". foreach (DataColumn col in table.Columns) { cIndex++; excel.Cells[1, cIndex] = col.ColumnName; } []s Compartilhar este post Link para o post Compartilhar em outros sites
sr.silva 1 Denunciar post Postado Março 2, 2009 Opa! Solução: Criando planilhas Excel - Usando MS Office []s Compartilhar este post Link para o post Compartilhar em outros sites