class Program
{
static void Main(string[] args)
{
var dt = new System.Data.DataTable(); dt.Columns.Add("#"); dt.Columns.Add("Expiration Date"); dt.Columns.Add("Remark"); DataRow dr = dt.NewRow(); dr[] = ;
dr[] = "23/9/2015";
dr[] = "For H&M (Shanghai DC) use. H&M is using EPV and it does not have license control function, this license file is for record only. "; dt.Rows.Add(dr); dr = dt.NewRow(); dr[] = ;
dr[] = "23/12/2015";
dr[] = "For SZ SI internal testing. "; dt.Rows.Add(dr); ExportToExcel(dt);
} /// <summary>
/// 导出Excel
/// </summary>
/// <param name="dt">要导出的DataTable</param>
private static void ExportToExcel(System.Data.DataTable dt)
{
if (dt == null) return;
var xlApp = new Application();
xlApp.Visible = true; var workBook = xlApp.Workbooks.Add(Type.Missing);
//从1开始
Worksheet workSheet = workBook.Sheets[];
Range range; //写入标题
for (int i = ; i < dt.Columns.Count; i++)
{
workSheet.Cells[, i + ] = dt.Columns[i].ColumnName;
range = (Range)workSheet.Cells[, i + ];
range.Interior.ColorIndex = ;//背景颜色
range.Font.ColorIndex = ;
range.HorizontalAlignment = XlHAlign.xlHAlignCenter;//居中
//加边框
range.BorderAround(XlLineStyle.xlContinuous, XlBorderWeight.xlThin, XlColorIndex.xlColorIndexAutomatic, null);
range.EntireColumn.ColumnWidth = ;
range.EntireRow.AutoFit();//自动调整行高
}
//写入内容
for (int r = ; r < dt.Rows.Count; r++)
{
for (int i = ; i < dt.Columns.Count; i++)
{
workSheet.Cells[r + , i + ] = dt.Rows[r][i];
range = (Range)workSheet.Cells[r + , i + ];
range.Font.Size = ;//字体大小
range.HorizontalAlignment = XlHAlign.xlHAlignCenter;//居中
range.VerticalAlignment = XlHAlign.xlHAlignCenter;
//加边框
range.BorderAround(XlLineStyle.xlContinuous, XlBorderWeight.xlThin, XlColorIndex.xlColorIndexAutomatic, null);
range.EntireRow.AutoFit();//自动调整行高
range.WrapText = true;
if (i == dt.Columns.Count - )
{
range.HorizontalAlignment = XlHAlign.xlHAlignLeft;
}
}
}
} }

COM 自动化控制Excel应用程序的更多相关文章

  1. WIN7中组件服务中的DCOM配置找不到Microsoft Excel应用程序的解决办法

    转自:http://blog.csdn.net/lploveme/article/details/8215265 在运行栏中输入命令:dcomcnfg,打开组件服务管理窗口,但是却发现找不到Micro ...

  2. 利用BeEF REST API自动化控制僵尸主机

    本文首发Freebuf,属于原创奖励计划,未经许可禁止转载. http://www.freebuf.com/articles/network/137662.html 一. 前言 关于BeEF,不再多介 ...

  3. 用Delphi将数据导入到Excel并控制Excel

    一.调用Excel的方法:一般情况下有两种方法调用Excel:1.  直接使用Delphi自带的组件:在Form中分别放入ExcelApplication, ExcelWorkbook和ExcelWo ...

  4. windows 2008 R2 64位系统,找到Microsoft Excel 应用程序

    在windows  2003 操作系统中, 1.在"开始"->"运行"中输入dcomcnfg.exe启动"组件服务", 2.依次双击& ...

  5. 使用events.EventEmitter 控制Node.js 程序执行流程

    使用events.EventEmitter 控制Node.js 程序执行流程 标题写的可能也不太对,大家领会精神: Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. ...

  6. 1.VBA 基本概念——《Excel VBA 程序开发自学宝典》

    1.1 常见对象及含义 对象名 含义 application 整个Excel应用程序 window 窗口 worksheet  一个工作表 sheets 指定工作簿的所有工作表的合集 shaperan ...

  7. 使用Appium-Desktop捕获APP元素控件实现自动化控制

    使用Appium捕获APP的元素控件 实现自动化控制 我是用的是华为P20手机进行测试,为了映射出它的adb端口,需再去官网下载安装一个华为手机助手,然后将手机调成开发者模式,连接时选择传输文件模式. ...

  8. VFP控制Excel操作集

    ◆访问EXCEL:ExcelSheet = GetObject('','Excel.Sheet')返回结果为类,则成功.例:ExcelSheet = GetObject('','Excel.Sheet ...

  9. Python_Selenium之浏览器封装_去掉浏览器受到自动化控制横条显示及去掉是否记住密码弹窗

    封装如下: from selenium import webdriverfrom common.config_utils import configfrom selenium.webdriver.ch ...

随机推荐

  1. python学习笔记:第5天 基本数据类型之字典

    目录 字典的介绍 补充 字典的介绍 字典(dict)是python中唯一的一个映射的数据类型,它是以一对一对的键值对的形式组成的一个容器,在python中字典也是可变的,我们也可以在字典中存放各种类型 ...

  2. iOS性能调优工具

    总结: 三类工具 基础工具 (NSLog的方式记录运行时间.) 性能工具.检测各个部分的性能表现,找出性能瓶颈 内存工具.检查内存正确性和内存使用效率 性能工具: 可以衡量CPU的使用,时间的消耗,电 ...

  3. ReadyAPI 教程和示例(二)

    声明:如果你想转载,请标明本篇博客的链接,请多多尊重原创,谢谢! 本篇使用的 ReadyAPI版本是2.5.0 接上一篇: 4.修改SoapUI测试 本节将演示如何为测试用例添加测试步骤以及更改请求参 ...

  4. bash脚本练习

    练习一: 1.添加5个用户,user1,...,user5: 2.每个用户的密码同用户名,添加密码完成后,不显示命令的执行结果: 3.每个用户添加完成后,都要显示用户某某已添加成功. useradd ...

  5. Hexo 博客 之 腾讯云部署过程

    写在前面 Hexo 博客搭好了有差不多两周时间了,这期间走了很多弯路,跳了很多坑.一些坑自己 bing 到了答案,找到了解决方法,一些坑则是自己摸索出来的解决方法.现在准备写几篇关于搭建流程.搭建过程 ...

  6. python常用命令—终端安装win32的两种方法

    1, pip install pywin32 2, pip install pypiwin32

  7. hibernate 异常a different object with the same identifier value was already associated with the session

    在使用hibernate的时候发现了一个问题,记录一下解决方案. 前提开启了事务和事务间并无commit,进行两次save,第二次的时候爆出下面的异常a different object with t ...

  8. maven 教程二 深入

    一:编写POM <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w ...

  9. wpa_supplicant之eloop_run分析

    部分内容转自http://blog.chinaunix.net/uid-20273473-id-3128151.html 重要结构体!!! struct eloop_sock { int sock; ...

  10. 《剑指Offer》题三十一~题四十

    三十一.栈的压入.弹出序列 题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的数字均不相等.例如,序列{1, 2, 3, 4 ,5}是某栈的压栈序列 ...