zoukankan
html css js c++ java
C# 操作Word文档(转)
public
string
CreateWordFile(
string
CheckedInfo)
...
{
string
message
=
""
;
try
...
{
Object Nothing
=
System.Reflection.Missing.Value;
Directory.CreateDirectory(
"
C:/CNSI
"
);
//
创建文件所在目录
string
name
=
"
CNSI_
"
+
DateTime.Now.ToShortString()
+
"
.doc
"
;
object
filename
=
"
C://CNSI//
"
+
name;
//
文件保存路径
//
创建Word文档
Word.Application WordApp
=
new
Word.ApplicationClass();
Word.Document WordDoc
=
WordApp.Documents.Add(
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing);
//
添加页眉
WordApp.ActiveWindow.View.Type
=
WdViewType.wdOutlineView;
WordApp.ActiveWindow.View.SeekView
=
WdSeekView.wdSeekPrimaryHeader;
WordApp.ActiveWindow.ActivePane.Selection.InsertAfter(
"
[页眉内容]
"
);
WordApp.Selection.ParagraphFormat.Alignment
=
Word.WdParagraphAlignment.wdAlignParagraphRight;
//
设置右对齐
WordApp.ActiveWindow.View.SeekView
=
WdSeekView.wdSeekMainDocument;
//
跳出页眉设置
WordApp.Selection.ParagraphFormat.LineSpacing
=
15f;
//
设置文档的行间距
//
移动焦点并换行
object
count
=
14
;
object
WdLine
=
Word.WdUnits.wdLine;
//
换一行;
WordApp.Selection.MoveDown(
ref
WdLine,
ref
count,
ref
Nothing);
//
移动焦点
WordApp.Selection.TypeParagraph();
//
插入段落
//
文档中创建表格
Word.Table newTable
=
WordDoc.Tables.Add(WordApp.Selection.Range,
12
,
3
,
ref
Nothing,
ref
Nothing);
//
设置表格样式
newTable.Borders.OutsideLineStyle
=
Word.WdLineStyle.wdLineStyleThickThinLargeGap;
newTable.Borders.InsideLineStyle
=
Word.WdLineStyle.wdLineStyleSingle;
newTable.Columns[
1
].Width
=
100f;
newTable.Columns[
2
].Width
=
220f;
newTable.Columns[
3
].Width
=
105f;
//
填充表格内容
newTable.Cell(
1
,
1
).Range.Text
=
"
产品详细信息表
"
;
newTable.Cell(
1
,
1
).Range.Bold
=
2
;
//
设置单元格中字体为粗体
//
合并单元格
newTable.Cell(
1
,
1
).Merge(newTable.Cell(
1
,
3
));
WordApp.Selection.Cells.VerticalAlignment
=
Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;
//
垂直居中
WordApp.Selection.ParagraphFormat.Alignment
=
Word.WdParagraphAlignment.wdAlignParagraphCenter;
//
水平居中
//
填充表格内容
newTable.Cell(
2
,
1
).Range.Text
=
"
产品基本信息
"
;
newTable.Cell(
2
,
1
).Range.Font.Color
=
Word.WdColor.wdColorDarkBlue;
//
设置单元格内字体颜色
//
合并单元格
newTable.Cell(
2
,
1
).Merge(newTable.Cell(
2
,
3
));
WordApp.Selection.Cells.VerticalAlignment
=
Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;
//
填充表格内容
newTable.Cell(
3
,
1
).Range.Text
=
"
品牌名称:
"
;
newTable.Cell(
3
,
2
).Range.Text
=
BrandName;
//
纵向合并单元格
newTable.Cell(
3
,
3
).Select();
//
选中一行
object
moveUnit
=
Word.WdUnits.wdLine;
object
moveCount
=
5
;
object
moveExtend
=
Word.WdMovementType.wdExtend;
WordApp.Selection.MoveDown(
ref
moveUnit,
ref
moveCount,
ref
moveExtend);
WordApp.Selection.Cells.Merge();
//
插入图片
string
FileName
=
Picture;
//
图片所在路径
object
LinkToFile
=
false
;
object
SaveWithDocument
=
true
;
object
Anchor
=
WordDoc.Application.Selection.Range;
WordDoc.Application.ActiveDocument.InlineShapes.AddPicture(FileName,
ref
LinkToFile,
ref
SaveWithDocument,
ref
Anchor);
WordDoc.Application.ActiveDocument.InlineShapes[
1
].Width
=
100f;
//
图片宽度
WordDoc.Application.ActiveDocument.InlineShapes[
1
].Height
=
100f;
//
图片高度
//
将图片设置为四周环绕型
Word.Shape s
=
WordDoc.Application.ActiveDocument.InlineShapes[
1
].ConvertToShape();
s.WrapFormat.Type
=
Word.WdWrapType.wdWrapSquare;
newTable.Cell(
12
,
1
).Range.Text
=
"
产品特殊属性
"
;
newTable.Cell(
12
,
1
).Merge(newTable.Cell(
12
,
3
));
//
在表格中增加行
WordDoc.Content.Tables[
1
].Rows.Add(
ref
Nothing);
WordDoc.Paragraphs.Last.Range.Text
=
"
文档创建时间:
"
+
DateTime.Now.ToString();
//
“落款”
WordDoc.Paragraphs.Last.Alignment
=
Word.WdParagraphAlignment.wdAlignParagraphRight;
//
文件保存
WordDoc.SaveAs(
ref
filename,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing,
ref
Nothing);
WordDoc.Close(
ref
Nothing,
ref
Nothing,
ref
Nothing);
WordApp.Quit(
ref
Nothing,
ref
Nothing,
ref
Nothing);
message
=
name
+
"
文档生成成功,以保存到C:\CNSI\下
"
;
}
catch
...
{
message
=
"
文件导出异常!
"
;
}
return
message;
}
查看全文
相关阅读:
伴郎
MySQL出现Waiting for table metadata lock的场景浅析
相同name,取最小的id的值,mysql根据相同字段 更新其它字段
Sequence contains no elements
Check if List<Int32> values are consecutive
comparison of truncate vs delete in mysql/sqlserver
Are query string keys case sensitive?浏览器种输入url附带的参数是否区分大小写
Understanding Action Filters (C#) 可以用来做权限检查
糖果缤纷乐攻略
DNGuard HVM Unpacker(3.71 trial support and x64 fixed)
原文地址:https://www.cnblogs.com/lingxzg/p/867209.html
最新文章
linux中如何清空一个文件的内容
Linux命令执行顺序— ||和&&和; 比较
Win7建立FTP站点
excel System.Runtime.InteropServices.COMException (0x80010105): 服务器出现意外情况。 (异常来自 HRESULT:0x80010105 (RPC_E
Win7 ArcGIS 10.5 安装错误 A service pack is required on this operatiing system
arcengine Annotation研究的一些学习资料(转)FeatureWeight
ArcGIS Engine Maplex Label(标注)使用一例(转)
ArcEngine地图窗口指定区域导出指定DPI多格式---delphi/C#实现
直接将DataTable存入oracle数据库中(转)
oracle高效分页查询总结
热门文章
ArcEngine二次开发错误编码对照表(转)
【转载】ArcEngine ITable 与System.DataTable相互转换
[INS-32025] 所选安装与指定 Oracle 主目录中已安装的软件冲突
组建MySQL集群的几种方案
change可以重命名列名,也可能修改列的类型和约束,而modify只能修改列的数据类型。
中国各地人性格特点,准到爆!!
MySQL出现Waiting for table metadata lock的原因以及解决方法
20000家私募九大派系 到底哪家最强
护照规则,2017年6月起国内航线坐飞机不能用护照
centos7升级kernel之后,vmware无法打开
Copyright © 2011-2022 走看看