Antes de tudo, vamos adicionar a referência: “Microsoft.Office.Interop.Excel;” para que possamos importar e acessar os arquivos .xls.
Você pode adicionar a referência acessando o menu “Project>Add Reference…”
Agora, declare ‘Excel’ como tipo da mesma referência.
Agora, crie uma conexão de dados e adicione um DataGridView ao formulário da seguinte maneira: (Não modifiquei o nome dos controles).
No botão para salvar o arquivo em xls, vamos adicionar o seguinte código:
Basta testar o código e ver o resultado:
Abraço e até a próxima.
Você pode adicionar a referência acessando o menu “Project>Add Reference…”
Agora, declare ‘Excel’ como tipo da mesma referência.
using Excel = Microsoft.Office.Interop.Excel;
Agora, crie uma conexão de dados e adicione um DataGridView ao formulário da seguinte maneira: (Não modifiquei o nome dos controles).
No botão para salvar o arquivo em xls, vamos adicionar o seguinte código:
private void button1_Click(object sender, EventArgs e)
{
SaveFileDialog salvar = new SaveFileDialog() // novo
SaveFileDialog
Excel.Application App; // Aplicação Excel
Excel.Workbook WorkBook; // Pasta
Excel.Worksheet WorkSheet; // Planilha
object misValue = System.Reflection.Missing.Value;
App = new Excel.Application();
WorkBook = App.Workbooks.Add(misValue);
WorkSheet = (Excel.Worksheet)WorkBook.Worksheets.get_Item(1);
int i = 0;
int j = 0;
// passa as celulas do DataGridView para a Pasta do Excel
for (i = 0; i <= dataGridView1.RowCount - 1; i++)
{
for (j = 0; j <= dataGridView1.ColumnCount - 1; j++)
{
DataGridViewCell cell = dataGridView1[j, i];
WorkSheet.Cells[i + 1, j + 1] = cell.Value;
}
}
// define algumas propriedades da caixa salvar
salvar.Title = "Exportar para Excel";
salvar.Filter = "Arquivo do Excel *.xls | *.xls";
salvar.ShowDialog(); // mostra
// salva o arquivo
WorkBook.SaveAs(salvar.FileName, Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue,
Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
WorkBook.Close(true, misValue, misValue);
App.Quit(); // encerra o excel
MessageBox.Show("Exportado com sucesso!");
}
Basta testar o código e ver o resultado:
Abraço e até a próxima.
ótimo tutorial cara, continua com eles. abraço
ResponderExcluirExcelente!
ResponderExcluirBacana !
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluirComo adicionar o cabeçalho do grid no excel
ResponderExcluirMuito bom, mas alguém conseguiu exportar também o cabeçalho? Podem me ajudar???
ResponderExcluirbasta fazer:
ResponderExcluir// passa as celulas do DataGridView para a Pasta do Excel
for (j = 0; j < dataGridView1.ColumnCount; j++)
{
WorkSheet.Cells[ 1, j + 1] = dataGridView1.Columns[j].HeaderText;
}
for (i = 1; i <= dataGridView1.RowCount; i++)
{
for (j = 0; j < dataGridView1.ColumnCount; j++)
{
DataGridViewCell cell = dataGridView1[j, i - 1];
WorkSheet.Cells[i + 1, j + 1] = cell.Value;
}
}
Alguém sabe como exportar mais de um dataGridView para uma mesma planilha no excel?Preciso exportar tres datagridview para o excel,com espaço entre elas.
ResponderExcluir