Criar um arquivo Excel através do C# parece ser um bicho de
7 cabeças. Mas não é.
Basta utilizar a dll da Microsoft chamada “Microsoft.Office.Interop.Excel”. Sua
utilização é muito simples, basta entender como o Excel funciona.
O Excel se divide em 3 partes:
- Workbook – Representa o arquivo Excel
- Worksheet – Representa uma pasta de trabalho
- Cell – Pode conter uma informação, texto números, etc.
Um Workbook pode
conter N pastas de trabalhos e uma pasta de trabalho contem N informações.
Nesse exemplo eu vou demonstrar como criar um arquivo excel e
preencher algumas células.
using
Microsoft.Office.Interop.Excel;
namespace
ExemploConsole
{
class Program
{
static void Main(string[]
args)
{
Application
excel = new Application();
Workbook
wb = excel.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);
Worksheet
ws = (Worksheet)wb.Worksheets.get_Item(1);
ws.Name = "Nome da
Pasta";
for (int i = 0; i <
10; i++)
{
for
(int j = 0; j < 10; j++)
{
Microsoft.Office.Interop.Excel.Range
ce = (ws.Cells[i + 1, j + 1] as
Microsoft.Office.Interop.Excel.Range);
int linha = i + 1;
int coluna = j + 1;
ce.Value2 = "Valor: " +
linha + " x " + coluna;
}
}
wb.SaveAs("c:\\temp\\excelTeste.xlsx",
Type.Missing, Type.Missing,
Type.Missing, Type.Missing,
Type.Missing,
Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
Type.Missing, Type.Missing,
Type.Missing, Type.Missing,
Type.Missing);
excel.Quit();
}
}
}
Como pode ser visto no código acima, eu criei um workbook (wb)
e um worksheet (ws).
Fiz dois loops para
adicionar informações em 10 linhas e em 10 colunas e por fim, salvei o arquivo.
Veja o resultado:
Esse exemplo é muito útil para quem deseja criar um relatório simples em Excel.
Legal com um pequeno ajuste, por causa da versão do framework, consegui fazer executar o código aqui na minha máquina.
ResponderExcluirBoa tarde amigo,
ResponderExcluirtentei replicar o codigo e esta apresentando erro na seguinte linha.
Worksheet ws = (Worksheet)wb.Worksheets.get_Item(1)