C#操作Excel时的格式设定(转)
Excel报表打印的格式设定
1. 表头的设置
Excel._Worksheet myWorksheet;
myWorksheet.PageSetup.Orientation = Excel.XlPageOrientation.xlLandscape;
//纸张方向, 返回或者设置对象的方向, 纵向或横向打印模式
//Excel.XlPageOrientation.xlLandscape landscape mode :worksheet横幅
//Excel.XlPageOrientation.xlPortrait Portrait mode :chart竖幅A4纸
myWorksheet.PageSetup.PaperSize = Excel.XlPaperSize.xlPaperA4;//纸张大小
|
xlPaper10x14 |
10 in. x 14 in. |
|
xlPaper11x17 |
11 in. x 17 in. |
|
xlPaperA3 |
A3 (297 mm x 420 mm) |
|
xlPaperA4 |
A4 (210 mm x 297 mm) |
|
xlPaperA4Small |
A4 Small (210 mm x 297 mm) |
|
xlPaperA5 |
A5 (148 mm x 210 mm) |
|
xlPaperB4 |
B4 (250 mm x 354 mm) |
|
xlPaperB5 |
A5 (148 mm x 210 mm) |
|
xlPaperCsheet |
C size sheet |
|
xlPaperDsheet |
D size sheet |
|
xlPaperEnvelope10 |
Envelope #10 (4-1/8 in. x 9-1/2 in.) |
|
xlPaperEnvelope11 |
Envelope #11 (4-1/2 in. x 10-3/8 in.) |
|
xlPaperEnvelope12 |
Envelope #12 (4-1/2 in. x 11 in.) |
|
xlPaperEnvelope14 |
Envelope #14 (5 in. x 11-1/2 in.) |
|
xlPaperEnvelope9 |
Envelope #9 (3-7/8 in. x 8-7/8 in.) |
|
xlPaperEnvelopeB4 |
Envelope B4 (250 mm x 353 mm) |
|
xlPaperEnvelopeB5 |
Envelope B5 (176 mm x 250 mm) |
|
xlPaperEnvelopeB6 |
Envelope B6 (176 mm x 125 mm) |
|
xlPaperEnvelopeC3 |
Envelope C3 (324 mm x 458 mm) |
|
xlPaperEnvelopeC4 |
Envelope C4 (229 mm x 324 mm) |
|
xlPaperEnvelopeC5 |
Envelope C5 (162 mm x 229 mm) |
|
xlPaperEnvelopeC6 |
Envelope C6 (114 mm x 162 mm) |
|
xlPaperEnvelopeC65 |
Envelope C65 (114 mm x 229 mm) |
|
xlPaperEnvelopeDL |
Envelope DL (110 mm x 220 mm) |
|
xlPaperEnvelopeItaly |
Envelope (110 mm x 230 mm) |
|
xlPaperEnvelopeMonarch |
Envelope Monarch (3-7/8 in. x 7-1/2 in.) |
|
xlPaperEnvelopePersonal |
Envelope (3-5/8 in. x 6-1/2 in.) |
|
xlPaperEsheet |
E size sheet |
|
xlPaperExecutive |
Executive (7-1/2 in. x 10-1/2 in.) |
|
xlPaperFanfoldLegalGerman |
German Legal Fanfold (8-1/2 in. x 13 in.) |
|
xlPaperFanfoldStdGerman |
German Legal Fanfold (8-1/2 in. x 13 in.) |
|
xlPaperFanfoldUS |
U.S. Standard Fanfold (14-7/8 in. x 11 in.) |
|
xlPaperFolio |
Folio (8-1/2 in. x 13 in.) |
|
xlPaperLedger |
Ledger (17 in. x 11 in.) |
|
xlPaperLegal |
Legal (8-1/2 in. x 14 in.) |
|
xlPaperLetter |
Letter (8-1/2 in. x 11 in.) |
|
xlPaperLetterSmall |
Letter Small (8-1/2 in. x 11 in.) |
|
xlPaperNote |
Note (8-1/2 in. x 11 in.) |
|
xlPaperQuarto |
Quarto (215 mm x 275 mm) |
|
xlPaperStatement |
Statement (5-1/2 in. x 8-1/2 in.) |
|
xlPaperTabloid |
Tabloid (11 in. x 17 in.) |
|
xlPaperUser |
User-defined |
myWorksheet.PageSetup.Zoom = false; //返回或者设置一个百分比(数值在 10% 和 400% 之间),该百分比为 Microsoft Excel 打印指定工作表时的缩放比例. 如果本属性设为 False,则由 FitToPagesWide 属性和 FitToPagesTall 属性的设定值对工作表的缩放进行控制
myWorksheet.PageSetup.FitToPagesWide = 1;
返回或者设置打印工作表时,对工作表进行缩放使用的页宽。仅应用于工作表。如果本属性设为 False,则 Microsoft 根据 FitToPagesTall 属性的设置对工作表进行缩放。
如果 Zoom 属性设为 True,则忽略 FitToPagesWide 属性。 Eg:本示例设置 Microsoft Excel 恰好按照一页的宽度和高度打印 Sheet1。
With Worksheets("Sheet1").PageSetup.
Zoom = False
FitToPagesTall = 1.
FitToPagesWide = 1
End With
myWorksheet.PageSetup.FitToPagesTall = false;
返回或者设置打印工作表时,对工作表进行缩放使用的页高。仅应用于工作表。如果本属性设为 False,则 Microsoft Excel 根据 FitToPagesWide 属性的设置对工作表进行缩放。 如果 Zoom 属性设为 True,则忽略 FitToPagesTall 属性。
//C#
myWorksheet.PageSetup.CenterHeader=@"&""Helv,Bold""&18" + ERP.Model.Common.LoginInfo.userLoginInfo.companyName + "订单库存" + "\n日期别订单未出数量明细表";
輸出一個雙引號:Console.WriteLine(@””””);
在@后的字串中,两个双引号相当于一个双引号
字体名字:
Arial
Courier
Garamond
Time New Roman
Verdana
Helv
//VB
With xlSheet.PageSetup
.LeftHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10公司名称:" ' & Gsmc
.CenterHeader = "&""楷体_GB2312,常规""公司人员情况表&""宋体,常规""" & Chr(10) & "&""楷体_GB2312,常规""&10日 期:"
.RightHeader = "" & Chr(10) & "&""楷体_GB2312,常规""&10单位:"
.LeftFooter = "&""楷体_GB2312,常规""&10制表人:"
.CenterFooter = "&""楷体_GB2312,常规""&10制表日期:"
.RightFooter = "&""楷体_GB2312,常规""&10第&P页 共&N页"
End With
myWorksheet.PageSetup.CenterFooter=@"页次: &P of &N";
myWorksheet.PageSetup.LeftMargin=25.6;//左边距
myWorksheet.PageSetup.RightMargin=16;//右边距
myWorksheet.PageSetup.TopMargin=85.5;//上边距
myWorksheet.PageSetup.BottomMargin=33;//下边距 myWorksheet.PageSetup.HeaderMargin=41.2;//页眉
myWorksheet.PageSetup.FooterMargin=12.8;//页脚
myWorksheet.PageSetup.CenterHorizontally=true; //水平居中
myRange.Borders[Excel.XlBordersIndex.xlEdgeTop].LineStyle=Excel.XlLineStyle.xlContinuous;//边框线的类型
//XlBordersIndex enum:指定某个范围的某个边框
|
Member name |
Description |
|
xlDiagonalDown |
Border running from the upper left-hand corner to the lower right of each cell in the range. 设置斜向下边框 |
|
xlDiagonalUp |
Border running from the lower left-hand corner to the upper right of each cell in the range. 设置斜向上边框 |
|
xlEdgeBottom |
Border at the bottom of the range. 设置底边框 |
|
xlEdgeLeft |
Border at the left-hand edge of the range. 设置左边框 |
|
xlEdgeRight |
Border at the right-hand edge of the range. 设置右边框 |
|
xlEdgeTop |
Border at the top of the range. 设置顶边框 |
|
xlInsideHorizontal |
Horizontal borders for all cells in the range except borders on the outside of the range. 设置水平边框 |
|
xlInsideVertical |
Vertical borders for all the cells in the range except borders on the outside of the range设置垂直边框 |
|
xlInsideVertical, xlInsideHorizontal |
设置中间的十字框 |
XlLineStyle Enumeration:指定边框线的类型
|
xlContinuous |
Continuous line.连续的线条 |
|
xlDash |
Dashed line.虚线 |
|
xlDashDot |
Alternating dashes and dots. 点虚线 |
|
xlDashDotDot |
Dash followed by two dots. |
|
xlDot |
Dotted line.点线 |
|
xlDouble |
Double line.双线 |
|
xlLineStyleNone |
No line.没有线.// 设置为没有边框 |
|
xlSlantDashDot |
Slanted dashes. 斜线 |
myRange.Borders[Excel.XlBordersIndex.xlEdgeTop].Weight = Excel.XlBorderWeight.xlMedium;
// Specifies the weight of the border around a range
//XlBorderWeight Enumeration:指定线的粗细程度
|
xlHairline |
Hairline (thinnest border).最细 |
|
xlMedium |
Medium.中等 |
|
xlThick |
Thick (widest border).粗 |
|
xlThin |
Thin.细 |
myRange.Borders[Excel.XlBordersIndex.xlEdgeTop].ColorIndex
=Excel.XlColorIndex.xlColorIndexAutomatic;
//ColorIndex Enumeration:
Specifies the color of a selected feature such as border, font, or fill.
|
xlColorIndexAutomatic |
Automatic color. |
|
xlColorIndexNone |
No color. |
本属性将一种颜色指定为工作簿调色板的一条索引。可以使用 Colors 方法返回当前的调色板。以下示范显示默认调色板中的颜色索引值。
myWorksheet.PageSetup.PrintTitleRows="$1:$3";
//设置顶端标题行,// 设置打印固定行//设定每一页必打印的行//返回或设置那些包含在每一页顶部重复出现的单元格的行,用宏语言字符串以 A1-样式的记号表示, String 类型,可读写
//VB
oExl.ActiveSheet.PageSetup.PrintTitleRows ="$1:$2" &&设置顶端标题行
myWorksheet.PageSetup. PrintTitleColumns="$A:$C" && 定义固定列返回或设置包含在每一页的左边重复出现单元格的列,用宏语言中 A1-样式的字符串记号,String 类型,可读写。
Excel.Range myRange = myWorksheet.get_Range(strStartPoint,strEndPoint);
(1)myRange.MergeCells = true;如果区域或样式包含合并单元格,本属性为 True
(2) myRange.Merge(object Across);
//Creates a merged cell from the specified Range object
Across : Optional Object. True to merge cells in each row of the specified range as separate merged cells. The default value is False. The value of a merged range is specified in the cell of the range's upper-left corner.
(3)myRange.MergeArea//Returns a Range object that represents the merged range containing the specified cell.If the specified cell isn’t in a merged range, this property returns the specified cell.The MergeArea property only works on a single-cell rang返回 Range 对象,代表包含指定单元格的合并的范围。如果指定的单元格不在合并的范围内,则该属性返回指定的单元格。只读。Variant类型。
myRange.VerticalAlignment = Excel.XlVAlign.xlVAlignTop; 返回或设置指定对象的垂直对齐方式
XlVAlign enum: Specifies the vertical alignment for the object.
|
NamedRange 控件中的文本进行换行。如果 Excel 对该对象中的文本进行换行,则为 true;如果 NamedRange 控件包含一些对文本进行换行的单元格,还包含一些不对文本进行换行的单元格,则为 空引用. Excel 在必要时将更改 NamedRange 控件的行高以容纳该范围中的文本。 myRange.HorizontalAlignment = Excel.XlHAlign.xlHAlignRight;// 返回或设置指定对象的水平对齐方式// XlHAlign enum:Specifies the horizontal alignment for the object.
2. 代码对页眉和页脚格式 在表头中使用多行,请用以下两种方法之一:L用CHR(10)插入换行符;LCHR(13)插入回车符 注意您无法记录宏中这些字符。下列表包含格式代码, 页眉和页脚中使用。 Code to format Text 在程序中设定文本的格式 ------------------------------------------------------------------------------------- &L Left-aligns the characters that follow 左对齐 &C Centers the characters that follow 居中 &R Right-aligns the characters that follow 右对齐 &E Turns double-underline printing on or off 双下划线 &X Turns superscript printing on or off 上标 &Y Turns subscript Printing on or off 下标 &B Turns bold printing on or off 粗体 &I Turns italic printing on or off 斜体 &U Turns underline printing on or off 下划线 &S Turns strikethrough(删除线) printing on or off 删除线 &”fontname” 指定文本的字体名字,确保字体名两边有双引号 &nn 用一个两位数字指定字体的大小 Codes to insert specific data 在程序中插入指定的数据 &D prints the current date 当前日期 &T prints the current time 当前时间 &F prints the name of the document 文档的名字 &A prints the name of the workbook tab (the “sheet name”)工作薄名 &P prints the page number 当前是第N页 &N Prints the total numer of pages in the document总页数 &P+number Prints the page number plus number 当前页值+数字 &P-number prints the page number minus number 当前页值-数字 && Prints a single ampersand &(=and)的记号名称 |
C#操作Excel时的格式设定(转)的更多相关文章
- 使用POI操作Excel时对事先写入模板的公式强制执行
场景:POI读取Excel模板. 当使用POI操作Excel时,发现由POI生成的公式能够在打开Excel是被执行, 而事先手工写入Excel模板文件的公式则不自动被调用,必须手动双击该Cell才能生 ...
- .net解决数据导出excel时的格式问题
在项目中一般都需要将报表数据导出到EXCEL中,但经常出现导出长串数据(如身份证)到EXCEL中后显示为科学计数法的格式,或者报表中显示为001的数据导出到Excel后成了1的格式. 下面简单介绍一下 ...
- JAVA操作Excel时文字自适应单元格的宽度设置方法
使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...
- c#操作Excel时,抛出异常:“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”
我们开发环境下,使用excel导入数据到数据库中,编译的软件起初是x86 方式,起初并未发现什么问题,一切很正常: 程序该进的过程: 后来导入文件一次就要读取几百G的数据导入数据库中,使用编译的X86 ...
- 利用poi开源jar包操作Excel时删除行内容与直接删除行的区别
一般情况下,删除行时会面临两种情况:删除行内容但保留行位置.整行删除(删除后下方单元格上移).对应的删除方法分别是: void removeRow(Row row)//Remove a row fro ...
- C#中用OLEDB操作EXCEL时,单元格内容长度超过255被截断
C#中Microsoft.ACE.OLEDB.12.0 驱动读取excel,会读取前8行来判定每列的数据类型,假如没有超过255个字符,那么会被设置为nvarchar(255),从第9行开始,超过25 ...
- 使用POI操作Excel时new XSSFWorkbook ()报错java.lang.NoSuchMethodError解决方式
使用最新的POI3.11时,在执行 Workbook workBook = new XSSFWorkbook ();这段代码时出现错误: java.lang.NoSuchMethodError: j ...
- java操作Excel的poi 格式设置
格式设置 package com.java.poi; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi. ...
- NPOI操作Excel时使用列头来读取数据的方法
首先定义扩展方法: public static ICell GetCell(this IRow row, string clounmName) { IRow firstRow = row.Sheet. ...
随机推荐
- ES6函数剩余参数(Rest Parameters)
我们知道JS函数内部有个arguments对象,可以拿到全部实参.现在ES6给我们带来了一个新的对象,可以拿到除开始参数外的参数,即剩余参数(废话好多 O(∩_∩)O~). 这个新的对象和argume ...
- LNMP环境搭建
LNMP环境搭建 Linux + Nginx + MySQL + PHP PHP是一种脚本语言,当前中国乃至世界上使用PHP语言开发的网站非常普遍 Nginx是一个web服务软件,和apache是一类 ...
- STM32的USART
转载自:http://www.cnblogs.com/TrueElement/archive/2012/09/14/2684298.html 几个问题: 1.状态寄存器(USART_SR)中的TC(T ...
- css中单位em和rem
一.介绍 1.em w3cschool中给出css中尺寸单位如下: 单位 描述 % 百分比 in 英寸 cm 厘米 mm 毫米 em 1em 等于当前的字体尺寸. 2em 等于当前字体尺寸的两倍. 例 ...
- 不就是抽个血吗,至于么-jQuery,Linux完结篇
hi 趁着周一去抽血化验,真开心...下午报告才出来,不过早上来了就开始各种晕菜,叫错名字,说错话.....至于么.. 还有在教研室的30天就可以肥家了,凯森凯森.今天不想干活(哪天想干过我就问问), ...
- Stanford机器学习笔记-2.Logistic Regression
Content: 2 Logistic Regression. 2.1 Classification. 2.2 Hypothesis representation. 2.2.1 Interpretin ...
- GTAC 2015 Schedule
之前发的GTAC 2015将于11月10号和11号召开 现在时刻表也出来啦 https://developers.google.com/google-test-automation-conferenc ...
- oracle:sql函数
Oracle将函数大致分为单行函数,聚合函数和分析函数. 单行函数分为字符函数,日期函数,转换函数,数字函数,通用函数,decode函数 一.字符函数 1)大小写控制函数 01.Lower() 全部小 ...
- UIPanelResetHelper(UIScrollView滚动复位)
原理 如果我们的UI中有滑动列表,并且列表比较长,那么不知道你们是否有这样需求,每次页面打开时,列表的滑动状态都恢复到默认状态. 如果要复位,其实就是修改UIPanel 的属性到初始状态.此组件做的工 ...
- Hash MD5 CRC 知识
本文旨在科普安全相关的知识,并附一个C#实现的文件管理工具. Hash 安全散列算法(英语:Secure Hash Algorithm,缩写为SHA)是一个密码散列函数家族,是FIPS所认证的五种安全 ...