Excel.Application myExcel = new Excel.Application();
Excel.Workbook workbookData = myExcel.Application.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet xlSheet = (Worksheet)workbookData.Worksheets[1];//取得sheet1

1) 显示当前窗口: xlSheet.Visible = True;
2) 更改 Excel 标题栏: xlSheet.Caption = '应用程序调用 Microsoft Excel';
3) 添加新工作簿: xlSheet.WorkBooks.Add;
4) 打开已存在的工作簿: xlSheet.WorkBooks.Open( 'd:/Demo.xls' );
5) 设置第2个工作表为活动工作表: xlSheet.WorkSheets[2].Activate; 
或 xlSheet.WorksSheets[ 'Sheet2' ].Activate;
6) 给单元格赋值:xlSheet.Cells[1,4].Value = 'http://blog.soso.com/qz.q/第一行第四列';
xlSheet.Cells(2,j+1).Interior.Color = 50000 ;//设置单元格背景颜色
7) 设置指定列的宽度(单位:字符个数),以第一列为例: xlSheet.Columns[1].ColumnsWidth = 5; 
8) 设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例: xlSheet.Rows[2].RowHeight = 1/0.035; // 1厘米 
9) 在第8行之前插入分页符: xlSheet.WorkSheets[1].Rows[8].PageBreak = 1; 
10) 在第8列之前删除分页符: xlSheet.Columns[4].PageBreak = 0; 
11) 指定边框线宽度: xlSheet.Range[ 'B3:D4' ].Borders[2].Weight = 3; 1-左 2-右 3-顶 4-底 5-斜( / ) 6-斜( / ) 
12) 清除第一行第四列单元格公式: xlSheet.Cells[1,4].ClearContents; 
13) 设置第一行字体属性: 
xlSheet.Rows[1].Font.Name = '隶书'; 
xlSheet.Rows[1].Font.Color = clBlue; 
xlSheet.Rows[1].Font.Bold = True; 
xlSheet.Rows[1].Font.UnderLine = True; 
xlSheet.Range("A1:G1").Merge(); //合并单元格 
14) 进行页面设置: 
xlSheet.PageSetup.FirstPageNumber=1;/ /从首页开始打印 
xlSheet.PageSetup.Orientation=2;//设置为横向打印 
xlSheet.PageSetup.PrintTitleRows = "$2:$2";//固定打印表头 
a.页眉: 注:这里要注意,如果是Wps ET,Margin的单位默认为像素,要注意一下所给的值,别超出合理范围;而Excel单位默认为字符数; xlSheet.PageSetup.CenterHeader = '报表演示';
b.页脚: xlSheet.PageSetup.CenterFooter = '第&P页---------共(&N)页'; 
c.页眉到顶端边距2cm: xlSheet.PageSetup.HeaderMargin = 2/0.035; 
d.页脚到底端边距3cm: xlSheet.PageSetup.HeaderMargin = 3/0.035; 
e.顶边距2cm: xlSheet.PageSetup.TopMargin = 2/0.035; 
f.底边距2cm: xlSheet.PageSetup.BottomMargin = 2/0.035; 
g.左边距2cm: xlSheet.PageSetup.LeftMargin = 2/0.035; 
h.右边距2cm: xlSheet.PageSetup.RightMargin = 2/0.035; 
i.页面水平居中: xlSheet.PageSetup.CenterHorizontally = 2/0.035; 
j.页面垂直居中: xlSheet.PageSetup.CenterVertically = 2/0.035; 
k.打印单元格网线: xlSheet.PageSetup.PrintGridLines = True; 
15) 拷贝操作: 
a.拷贝整个工作表: xlSheet.Used.Range.Copy; 
b.拷贝指定区域: xlSheet.Range[ 'A1:E2' ].Copy; 
c.从A1位置开始粘贴: xlSheet.Range.[ 'A1' ].PasteSpecial; 
d.从文件尾部开始粘贴: xlSheet.Range.PasteSpecial; 
16) 插入一行或一列: 
a. xlSheet.Rows[2].Insert; 
b. xlSheet.Columns[1].Insert; 
17) 删除一行或一列: 
a. xlSheet.Rows[2].Delete; 
b. xlSheet.Columns[1].Delete; 
18) 打印预览工作表: xlSheet.PrintPreview; 
19) 打印输出工作表: xlSheet.PrintOut; 
20) 工作表另存为: workbookData.Saved = true;
xlSheet.SaveAs(filename, missing, missing, missing, missing, missing, missing, missing, missing, missing);
21) 关闭工作簿: workbookData.Close(false, missing, missing);
22) 退出 Excel: myExcel.Quit();

在C#中如何对Excel单元格设置背景色以及对Range设边框

 
private Excel.Application objApp;
private Excel.Sheets objSheets;
private Excel._Worksheet objSheet;
private Excel.Range range;
objApp = new Excel.Application();
objSheet = (Excel._Worksheet)objSheets.get_Item(1);

/// <summary>
/// 设置单元格的背景色---多个连接的单元格
/// </summary>
/// <param name="sRow">开始行</param>
/// <param name="sCol">开始列</param>
/// <param name="eRow">结束行</param>
/// <param name="eCol">结束列</param>
/// <param name="colorIndex">颜色的索引</param>
public void SetRangeBackground(int sRow,int sCol,int eRow,int eCol,int colorIndex)
{
range=objSheet.get_Range(objSheet.Cells[sRow,sCol],objSheet.Cells[eRow,eCol]);
range.Interior.ColorIndex=colorIndex;
}
/// <summary>
/// 设置单元格的线
/// </summary>
public void SetBorderLine(int sRow,int sCol,int eRow,int eCol)
{
range=objSheet.get_Range(objSheet.Cells[sRow,sCol],objSheet.Cells[eRow,eCol]);
range.Cells.Borders.LineStyle=1;

}

设置边框颜色:sheet.Cells[startRow, 2].Borders.Color = 0x0000ff;//这个是红色,x后前两个0是蓝色,中间两个0是绿色,最后两个是红色~~

设置制定边框:sheet.Range[sheet.Cells[1, 2], sheet.Cells[1 ,30]].Borders[4].LineStyle = 1;

Border[4]是指下边框,3是指上边框,1是左,2是右~~填成0会报错.不加中括号是全部的边框~~~

Excel里设置颜色的时候:ColorIndex,不能用Color(我汗).在网上找到的这个图,不用自己去一个个试了

来个改背景色的例子:sheet.Cells[startRow, 25].Interior.ColorIndex = 4;

合并单元格:r=ws.get_Range(ws.Cells[1,1],ws.Cells[1,6]);     //取得合并的区域 
r.MergeCells=true;

用C#调Excel对象的Worksheets.Delete进行删除某个文件中的Sheet时始终无法实现。后来发现问题所在:

默认情况下,Appliation.Open文件时visible为false,在无宏的情况下只会在后台进行操作,不在前台打开页面。这种情况下,如果只调用Delete来删除,会弹出确认删除的对话框,但是由于是后台操作无法看见这个对话框,所以始终删除没有完成。将visible时才发现问题所在。

解决方法,不弹出这个提示框,workbook.displayalerts = false ,即可。(注:此处的workbook是Application)

C#导出Excel和相关打印设置的更多相关文章

  1. C# 导出 Excel 和相关打印设置

    源地址:http://blog.csdn.net/wanmingtom/article/details/6125599 Excel.Application myExcel = new Excel.Ap ...

  2. Vue项目中将table组件导出Excel表格以及打印页面内容

    体验更优排版请移步原文:http://blog.kwin.wang/programming/vue-table-export-excel-and-print.html 页面中显示的table表格,经常 ...

  3. C#导出Excel按照指定格式设置单元格属性值

    最近项目中一直在写XML.Table.Excel之间的转化.之前一直都是不考虑格式的导出,今天给出一个格式,让按照格式导出,还真把我这新手为难了一翻,网上给出的资料基本一样.为了一个单元格文字变色纠结 ...

  4. 个人永久性免费-Excel催化剂功能第50波-批量打印、导出PDF、双面打印功能

    在倡导无纸化办公的今天,是否打印是一个碍眼的功能呢,某些时候的确是,但对于数据的留存,在现在鼓吹区块链技术的今天,仍然不失它的核心价值,数据报表.单据打印出来留存,仍然是一种不可或缺的数据存档和防篡改 ...

  5. java中使用jxl导出Excel表格详细通用步骤

    该方法一般接收两个参数,response和要导出的表格内容的list. 一般我们将数据库的数据查询出来在页面进行展示,根据用户需求,可能需要对页面数据进行导出. 此时只要将展示之前查询所得的数据放入s ...

  6. NPOI导出EXCEL部分样式不起作用

    在使用NPOI导出excel的时候,设置cell样式,数据量多余6条之后,在后面几条数据没有样式(边框,对其,换行等). 原因是设置CellStyle的时候把CreateCellStyle放在循环列集 ...

  7. 使用NPOI或EPPlus来导出Excel文件实例,可在Excel文件加密

    使用NPOI.dll组件来导出Excel文件,并设置样式,Nuget引用即可. packages\NPOI.2.1.3.1\lib\net20\NPOI.dll #region Excel prote ...

  8. NPOI导出EXCEL 打印设置分页及打印标题

    在用NPOI导出EXCEL的时候设置分页,在网上有查到用sheet1.SetRowBreak(i)方法,但一直都没有起到作用.经过研究是要设置  sheet1.FitToPage = false; 而 ...

  9. [转]NPOI导出EXCEL 打印设置分页及打印标题

    本文转自:http://www.cnblogs.com/Gyoung/p/4483475.html 在用NPOI导出EXCEL的时候设置分页,在网上有查到用sheet1.SetRowBreak(i)方 ...

随机推荐

  1. PHP serialize 和 JSON 解析与区别

    PHP serialize 和 JSON 解析与区别 对于JSON(JavaScript Object Notation)大家应该不陌生,它是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器 ...

  2. vs2008下Error LINK2005: already defined in ...的一种解决方式

    原因:不同的库之间都定义了相同的名称. 方法:右键工程->Properties->Configuration->Linker->Input 在右侧的Additional Dep ...

  3. uiautomator2 +Python进行Android原生应用UI测试

    uiautomator2封装了google的uiautomator(只能用java),uiautomator2可以使用脚本语言python进行编写,更简单直观地修改.运行自动化测试代码: 不足为:仅支 ...

  4. Jmeter 监控远程服务器

    压力测试中如何监控服务器的性能呢? 性能选取哪些指标? 环境配置: Jmeter安装路径:E:\SOFEWARE\apache-jmeter-3.1: 需要将JMeterPlugins-Extras. ...

  5. 记一次对python反弹shell的分析

    前言 昨天学习了反弹shell,对python弹shell产生了一些疑惑 python -c 'import socket,subprocess,os;s=socket.socket(socket.A ...

  6. JNI基础学习

    1.JNI(Java Native Interface): 它允许Java代码和其他语言写的代码进行交互,JNI一开始是为了本地已编译语言,尤其是C和C++而设计的,但是它并不妨碍你使用其他语言,只要 ...

  7. Unity防破解 —— 重新编译mono

        Unity4.x版本导出android包时,只能选择mono,无法使用il2cpp,这就造成了我们的程序集很容易被修改--很多朋友在发布项目时觉得即使代码暴露出去也没什么关系,只有项目火了才有 ...

  8. NOIP2018提高组模拟题(六)

    购物(shop) Description 小林来到商店中进行购物.商店里一共有 n 件物品,第 i 件物品的价格为 a[i] 元.小林总共需要购买 m 件物品,他希望他所花费的钱最少,请你计算出最小 ...

  9. [BZOJ 1805] Sail 船帆

    Link: BZOJ 1805 传送门 Solution: 一道思路比较巧的线段树的题目 首先可以发现,答案和顺序是没有关系的,都是$\sum_{i=1}^n {H_i∗(H_i−1)/2}$. 那么 ...

  10. [xsy2962]作业

    题意:$f_0=1-\dfrac1e,f_n=1-nf_{n-1}$,求$f_n(n\leq10000)$,保留四位小数 这题代码只有⑨行但是题解很神... 因为递推式中有乘法,所以直接按题目来推肯定 ...