openXML设置Excel行组合
重要代码:
row = new DOS.Row()
{
RowIndex = new DOX.UInt32Value(rowIndex),
Spans = new DOX.ListValue<DOX.StringValue>(new DOX.ListValue<DOX.StringValue>()
{
InnerText = "1:2"
}),
DyDescent = new DOX.DoubleValue(0.2),
OutlineLevel = new DOX.ByteValue().Value = };
注意:如果多个行组合时,各组合之间的行不能连续,否则认为是一个行组合。如组合一的行为123,组合二的行为456,则认为是一个行组合,行为123456
完整代码:
/// <summary>
/// 行组
/// </summary>
/// <param name="fileName"></param>
/// <param name="sheetName"></param>
public static void CreateRowGroup(string fileName,string sheetName)
{
using(pkg.SpreadsheetDocument document=pkg.SpreadsheetDocument.Create(fileName, DOX.SpreadsheetDocumentType.Workbook))
{
pkg.WorkbookPart workbookPart = document.AddWorkbookPart();
DOS.Workbook workbook = workbookPart.Workbook = new DOS.Workbook(); pkg.SharedStringTablePart sharedStringTablePart = workbookPart.AddNewPart<pkg.SharedStringTablePart>(); pkg.WorksheetPart worksheetPart = workbookPart.AddNewPart<pkg.WorksheetPart>();
DOS.SheetData sheetData = new DOS.SheetData(); DOS.Worksheet worksheet = worksheetPart.Worksheet = new DOS.Worksheet(sheetData); DOS.Sheets sheets = document.WorkbookPart.Workbook.AppendChild<DOS.Sheets>(new DOS.Sheets()); DOS.Sheet sheet = new DOS.Sheet()
{
Id = workbookPart.GetIdOfPart(worksheetPart),
SheetId = ,
Name = sheetName
};
sheets.Append(sheet); DOS.Row row;
for(uint rowIndex=;rowIndex<;rowIndex++)
{
if(rowIndex % == )
{
row = new DOS.Row()
{
RowIndex = new DOX.UInt32Value(rowIndex)
};
}
else
{
row = new DOS.Row()
{
RowIndex = new DOX.UInt32Value(rowIndex),
Spans = new DOX.ListValue<DOX.StringValue>(new DOX.ListValue<DOX.StringValue>()
{
InnerText = "1:2"
}),
DyDescent = new DOX.DoubleValue(0.2),
OutlineLevel = new DOX.ByteValue().Value = };
} sheetData.Append(row); Random random = new Random((int)DateTime.Now.Ticks* (int)rowIndex);
string text = random.Next(,).ToString(); int textIndex = InsertSharedStringItem(text, sharedStringTablePart); DOS.Cell cell = new DOS.Cell()
{
CellReference = "A" + rowIndex.ToString(),
CellValue = new DOS.CellValue(textIndex.ToString())
};
cell.DataType = new DOX.EnumValue<DOS.CellValues>(DOS.CellValues.SharedString); row.AppendChild(cell); random = new Random((int)DateTime.Now.Ticks * (int)rowIndex);
text = random.Next(, ).ToString(); textIndex = InsertSharedStringItem(text, sharedStringTablePart); cell = new DOS.Cell()
{
CellReference = "B" + rowIndex.ToString(),
CellValue = new DOS.CellValue(textIndex.ToString())
};
cell.DataType = new DOX.EnumValue<DOS.CellValues>(DOS.CellValues.SharedString); row.AppendChild(cell);
} worksheet.Save();
//workbook.Save();
//document.Save(); }
}
运行后的结果图:

openXML设置Excel行组合的更多相关文章
- C#设置Excel行高、列宽
设置固定值 worksheet.Columns[1].ColumnWidth = 15; 设置自动换行 worksheet.Columns.WrapText = true; 设置自动行高.列宽 xlA ...
- openXML写Excel列组合
重要代码: DOS.SheetData sheetData = new DOS.SheetData(); DOS.Columns columns = new DOS.Columns(); DOS.Co ...
- C#_Excel数据读取与写入_自定义解析封装类_支持设置标题行位置&使用excel表达式收集数据&单元格映射&标题映射&模板文件的参数数据替换
本篇博客园是被任务所逼,而已有的使用nopi技术的文档技术经验又不支持我需要的应对各种复杂需求的苛刻要求,只能自己造轮子封装了,由于需要应对很多总类型的数据采集需求,因此有了本篇博客的代码封装,下面一 ...
- C# 设置Excel数据自适应行高、列宽的2种情况
Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小.数据内容长度不一而出现,列宽过宽.过窄或者行高过大.过小的问题.常见的解决方法是调整行高.列宽.在Microsoft Excel ...
- 原创:如何实现在Excel通过循环语句设置指定行的格式
原创:如何实现在Excel通过循环语句设置指定行的格式 一.需求: 想让excel的某些行(比如3的倍数的行)字体变成5号字 如何整: 二.实现: Sub code() To Range(" ...
- Java 设置Excel自适应行高、列宽
在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定 ...
- C#/VB.NET 如何在Excel中使用条件格式设置交替行颜色
说起高亮数据行,不让人想起了交替颜色行,有的人把交替颜色行也都设置成高亮,不仅不美观,而且对阅读还是个干扰.隔行交替的颜色是为了阅读不串行,这些行只是环境,数据才是主体.那么如何通过C#/VB.NET ...
- C# 设置Excel打印选项及打印excel文档
C# 设置Excel打印选项及打印excel文档 打印Excel文档是一个很常见的操作,但有时候我们会碰到各种不同的打印需求,例如只打印一个Excel工作表的其中一部分,或打印时每页都有表头,或把工作 ...
- POI中设置Excel单元格格式
引用:http://apps.hi.baidu.com/share/detail/17249059 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWork ...
随机推荐
- UGUI脚本添加Btn回调的方法
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; ...
- 2019 年 React 学习路线图(转)
转自:https://www.infoq.cn/article/AEkiVAiJf25LZmoUe_yc 之前我们已经介绍了2019 年 Vue 学习路线图,而 React 作为当前应用最广泛的前端框 ...
- Ubuntu 通过apt安装VSCode
1. sudo vim /etc/apt/sources.list.d/vscode.list 并向里面添加:deb [arch=amd64] http://packages.microsoft.co ...
- VXLAN实验
拓扑图: SPINE配置: hostname SPINE-1vdc SPINE-1 id 1 limit-resource vlan minimum 16 maximum 4094 limit-res ...
- LinkedIn TAG
List1 [leetcode]243. Shortest Word Distance最短单词距离 Two Pointers [leetcode]244. Shortest ...
- Day1数据结构和算法
2019-02-27 程序设计=数据结构+算法 数据结构就是关系,是数据元素相互之间存在的关系集合 逻辑结构:数据对象中数据元素的相互关系 集合结构:集合里的数据元素除了同属于一个集合外没有其他关系 ...
- python读取数据库出txt报表
python出报表使用到了数据库访问,文件读写,字符串切片处理.还可以扩展到电子邮件的发送,异常处理以及定时批任务. 总之在学习中发现还是有蛮多乐趣在其中. #coding=utf-8 ' impor ...
- linux回顾
linux内容回顾: centos6.9 ubuntu12 麒麟linux suse(德国linux) depin xshell(连接工具) vmware workstation(个人学习) ...
- github 生成配置ssh 秘钥方法详解
如果安装github成功后,当从本地提交文件到github的时候,提交不成功,报错,可能问题就是你还没有生成ssh秘钥 1.当你提交文件到github,不成功,出现如下的情况,就代表着github上面 ...
- Mysql运行状态查询命令及调优详解
(转载自点击打开链接) MySQL运行状态及调优(一) 一.查看MySQL运行情况SHOW STATUS; 二.查看INNODB数据库引擎运行状态SHOW ENGINE INNODB STATUS; ...