Considere a seguinte interface
Utilize o seguinte código dentro do botão:
// Inicia o componente Excel Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; //Cria uma planilha temporária na memória do computador xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Add(misValue); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); //incluindo dados xlWorkSheet.Cells[1, 7] = "Dados do cliente:"; xlWorkSheet.Cells[2, 7] = textBox1.Text; xlWorkSheet.Cells[3, 7] = textBox2.Text; xlWorkSheet.Cells[4, 7] = textBox3.Text; //Acrescentando mais dados, para gerar o gráfico. xlWorkSheet.Cells[1, 1] = "Alunos x Componentes"; xlWorkSheet.Cells[1, 2] = "Pablo"; xlWorkSheet.Cells[1, 3] = "Paulo"; xlWorkSheet.Cells[1, 4] = "Marciel"; xlWorkSheet.Cells[2, 1] = "DS (Anderson)"; xlWorkSheet.Cells[2, 2] = "8"; xlWorkSheet.Cells[2, 3] = "6"; xlWorkSheet.Cells[2, 4] = "4"; xlWorkSheet.Cells[3, 1] = "TM (Anderson)"; xlWorkSheet.Cells[3, 2] = "7"; xlWorkSheet.Cells[3, 3] = "7"; xlWorkSheet.Cells[3, 4] = "6"; xlWorkSheet.Cells[4, 1] = "PC (Sergio, a lenda!)"; xlWorkSheet.Cells[4, 2] = "8"; xlWorkSheet.Cells[4, 3] = "8"; xlWorkSheet.Cells[4, 4] = "6"; xlWorkSheet.Cells[5, 1] = "PTCC (ProLú)"; xlWorkSheet.Cells[5, 2] = "7"; xlWorkSheet.Cells[5, 3] = "8"; xlWorkSheet.Cells[5, 4] = "6"; Excel.Range chartRange; Excel.ChartObjects xlCharts = (Excel.ChartObjects)xlWorkSheet.ChartObjects(Type.Missing); Excel.ChartObject myChart = (Excel.ChartObject)xlCharts.Add(100, 180, 500, 300); Excel.Chart chartPage = myChart.Chart; chartRange = xlWorkSheet.get_Range("A1", "d5"); chartPage.SetSourceData(chartRange, misValue); chartPage.ChartType = Excel.XlChartType.xlBubble; //Salva o arquivo de acordo com a documentação do Excel. string caminho = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); File.Delete(caminho + "\\arquivo.xls"); xlWorkBook.SaveAs("arquivo.xls", Excel.XlFileFormat.xlWorkbookNormal); xlWorkBook.Close(true, misValue, misValue); xlApp.Quit(); //o arquivo foi salvo na pasta Documentos. MessageBox.Show("Concluído. Verifique em " + caminho + "arquivo.xls"); //inicia a classe ProcessStartInfo ProcessStartInfo AbrirArquivoExcel = new ProcessStartInfo(); //O caminho do arquivo do Excel AbrirArquivoExcel.FileName = caminho + "\\arquivo.xls"; // executa o comando passado ao cmd Process.Start(AbrirArquivoExcel);
Resultado: