using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
namespace OperateExcel
{
public class Account
{
public int ID { get; set; }
public double Balance { get; set; }
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void ExcelButton_Click(object sender, EventArgs e)
{
var bankAccounts = new List<Account> {
new Account {
ID = 345678,
Balance = 541.27
},
new Account {
ID = 1230221,
Balance = -127.44
}};
DisplayInExcel(bankAccounts);
}
private void Form1_Load(object sender, EventArgs e)
{
}
static void DisplayInExcel(IEnumerable<Account> accounts)
{
var excelApp = new Excel.Application();
// Make the object visible.
excelApp.Visible = true;
// Create a new, empty workbook and add it to the collection returned
// by property Workbooks. The new workbook becomes the active workbook.
// Add has an optional parameter for specifying a praticular template.
// Because no argument is sent in this example, Add creates a new workbook.
excelApp.Workbooks.Add();
// This example uses a single workSheet. The explicit type casting is
// removed in a later procedure.
Excel._Worksheet workSheet = (Excel.Worksheet)excelApp.ActiveSheet;
workSheet.Cells[1, "A"] = "ID Number";
workSheet.Cells[1, "B"] = "Current Balance";
var row = 1;
foreach (var acct in accounts)
{
row++;
workSheet.Cells[row, "A"] = acct.ID;
workSheet.Cells[row, "B"] = acct.Balance;
for (int i = 4; i < 10000; i++)
{
workSheet.Cells[i, "B"] = "MyExcel";
}
}
workSheet.Columns[1].AutoFit();
workSheet.Columns[2].AutoFit();
}
}
}
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
namespace OperateExcel
{
public class Account
{
public int ID { get; set; }
public double Balance { get; set; }
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void ExcelButton_Click(object sender, EventArgs e)
{
var bankAccounts = new List<Account> {
new Account {
ID = 345678,
Balance = 541.27
},
new Account {
ID = 1230221,
Balance = -127.44
}};
DisplayInExcel(bankAccounts);
}
private void Form1_Load(object sender, EventArgs e)
{
}
static void DisplayInExcel(IEnumerable<Account> accounts)
{
var excelApp = new Excel.Application();
// Make the object visible.
excelApp.Visible = true;
// Create a new, empty workbook and add it to the collection returned
// by property Workbooks. The new workbook becomes the active workbook.
// Add has an optional parameter for specifying a praticular template.
// Because no argument is sent in this example, Add creates a new workbook.
excelApp.Workbooks.Add();
// This example uses a single workSheet. The explicit type casting is
// removed in a later procedure.
Excel._Worksheet workSheet = (Excel.Worksheet)excelApp.ActiveSheet;
workSheet.Cells[1, "A"] = "ID Number";
workSheet.Cells[1, "B"] = "Current Balance";
var row = 1;
foreach (var acct in accounts)
{
row++;
workSheet.Cells[row, "A"] = acct.ID;
workSheet.Cells[row, "B"] = acct.Balance;
for (int i = 4; i < 10000; i++)
{
workSheet.Cells[i, "B"] = "MyExcel";
}
}
workSheet.Columns[1].AutoFit();
workSheet.Columns[2].AutoFit();
}
}
}