C# 操作office
2015-06-25 22:24
399 查看
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();
}
}
}
相关文章推荐
- WP8.1发送Post或Get请求顺带文件上传
- C# 函数式编程
- ArcGIS / C#开发 无法读取Excel(*.xlsx)文件
- C# 只允许运行一个实例
- C# 实体类序列化与反序列化一 (XmlSerializer)
- C# 实体类序列化与反序列化一 (XmlSerializer)
- c# des 加密 解密
- C#读取文件路径
- 在C#中子线程如何操作主窗口线程上的控件
- C#中五个序列聚合运算(Sum, Average, Min, Max,Aggregate)
- c# datetime 格式化大全与使用总结
- c#sdk的pfop使用代码说明
- 【C#】打印机 printDocument、printDialog、PageSetupDialog、printPreviewDialog
- 第二章 深入 C# 数据类型
- .NET: C#: Datetime
- C# 计算时间差 用timespan函数
- C# 里用到的scalar variable
- 用c#读取excel文件缺少第一行数据解决方法
- C#中对于接口的实现方式
- .NET: C#: Attribute