openXML写Excel列组合
重要代码:
DOS.SheetData sheetData = new DOS.SheetData();
DOS.Columns columns = new DOS.Columns();
DOS.Column column = null;
uint min = ;
for (int ind = ; ind <= ; ind += )
{
if (ind < )
continue;
column = columns.AppendChild<DOS.Column>(new DOS.Column());
if (ind - <= )
{
min = ;
}
else
{
min = (uint)ind - ;
}
column.Min = new DOX.UInt32Value(min);
uint max = (uint)ind - ;
if (max <= )
max = ;
column.Max = new DOX.UInt32Value(max);
column.OutlineLevel = ;
}
DOS.Worksheet worksheet = worksheetPart.Worksheet = new DOS.Worksheet(columns,sheetData);
如果存在多个列组合,列组合之间的列不能连续,否则认为是一个列组合
完整代码:
/// <summary>
/// 列组
/// </summary>
/// <param name="fileName"></param>
/// <param name="sheetName"></param>
public static void CreateColumnGroup(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.Columns columns = new DOS.Columns();
DOS.Column column = null;
uint min = ; for (int ind = ; ind <= ; ind += )
{
if (ind < )
continue;
column = columns.AppendChild<DOS.Column>(new DOS.Column()); if (ind - <= )
{
min = ;
}
else
{
min = (uint)ind - ;
}
column.Min = new DOX.UInt32Value(min);
uint max = (uint)ind - ;
if (max <= )
max = ;
column.Max = new DOX.UInt32Value(max);
column.OutlineLevel = ;
} DOS.Worksheet worksheet = worksheetPart.Worksheet = new DOS.Worksheet(columns,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++)
{
row = new DOS.Row()
{
RowIndex = new DOX.UInt32Value(rowIndex)
}; sheetData.Append(row); Random random = null; DOS.Cell cell = null;
for(int colindex=;colindex<=;colindex++)
{
random = new Random((int)DateTime.Now.Millisecond * (int)rowIndex);
string text = random.Next(, ).ToString(); int textIndex = InsertSharedStringItem(text, sharedStringTablePart); cell = new DOS.Cell()
{
CellReference = colindex.ToExcelName() + rowIndex.ToString(),
CellValue = new DOS.CellValue(textIndex.ToString())
};
cell.DataType = new DOX.EnumValue<DOS.CellValues>(DOS.CellValues.SharedString);
row.AppendChild(cell);
} } worksheet.Save(); }
}
openXML写Excel列组合的更多相关文章
- openXML设置Excel行组合
重要代码: row = new DOS.Row() { RowIndex = new DOX.UInt32Value(rowIndex), Spans = new DOX.ListValue<D ...
- 使用OpenXML将Excel内容读取到DataTable中
前言:前面的几篇文章简单的介绍了如何使用OpenXML创建Excel文档.由于在平时的工作中需要经常使用到Excel的读写操作,简单的介绍下使用 OpenXML读取Excel中得数据.当然使用Open ...
- java 写 Excel(不生成实体文件,写为流的形式)
java 写 Excel(不生成实体文件,写为流的形式) public String exportReportExcel(String mediaCode, List<SimpleMediaRe ...
- Pandas 基础(4) - 读/写 Excel 和 CSV 文件
这一节将分别介绍读/写 Excel 和 CSV 文件的各种方式: - 读入 CSV 文件 首先是准备一个 csv 文件, 这里我用的是 stock_data.csv, 文件我已上传, 大家可以直接下载 ...
- python读、写、修改、追写excel文件
三个工具包 python操作excel的三个工具包如下 xlrd: 对excel进行读相关操作 xlwt: 对excel进行写相关操作 xlutils: 对excel读写操作的整合 注意,只能操作.x ...
- Python3 读、写Excel文件
首先,简单介绍一下EXECL中工作簿和工作表的区别: 工作簿的英文是BOOK(WORKBOOK),工作表的英文是SHEET(WORKSHEET). 一个工作簿就是一个独立的文件 一个工作簿里面可以有1 ...
- C# 读带复选框的excel,写excel并设置字体、边框、背景色
这是一篇excel读写功能大汇总,通过C#调用Microsoft.Office.Interop.Excel.dll才能完成任何复杂格式excel的读写操作. 本文需要读取的excel格式如下: 可见表 ...
- 在Delphi中通过OLE方式写Excel文件
报表的打印是每个项目都会遇到的问题.由于报表格式要求五花八门,往往又同时要求打印格式可方便调整.作为一种替代方法,可以将需要打印的报表导出到Excel/Word,打印交给Office去吧.由于Offi ...
- 写excel
一.写excel import xlwt book = xlwt.Workbook()# 创建excel sheet = book.add_sheet('stu_info')# 加一个sheet sh ...
随机推荐
- Web用户登录---验证码的设计与实现
在开发中验证码是比较常用到有效防止这种问题对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试的方式. 验证码生成步骤:1.获得随机生成的颜色,画出随机线条生成背景底.2.String cod ...
- pycharm 配置svn
1.找到本地svn.exe 2.配置svn路径 3.输入svn路径,然后会进行密码校验 问题 本地的TortoiseSVN在bin目录没有发现svn.exe 原因: 安装TortoiseSVN的时候 ...
- myhaits if test判断字符串
判断参数是否为字符串0 <if test='Type=="0"'><!-- 注意单双引号 --> <include refid="selec ...
- strin 数组转换成int 数组
string[] strarry = ids.Trim(',').Split(','); int[] arryInts = Array.ConvertAll<string, int>(st ...
- docker-compose安装
安装docker-compose两种最新的docker安装方式 1.从github上下载docker-compose二进制文件安装下载最新版的docker-compose文件 $ sudo curl ...
- swift 关于FDFullscreenPopGesture的右滑返回
关于导航栏右滑返回的工具库 FDFullscreenPopGesture 是 OC 版本,用了 runtime 等各种骚操作 关于 swift ,我在 UINavigationController 的 ...
- Linux静态设置CentOS 7虚拟机的IP
进入root ,输入命令:# vi /etc/sysconfig/network-scripts/ifcfg-ens33 .将DHCP协议获取IP,改为static静态,加上想要设置的IPADDR即可 ...
- 关于TCP窗口大小
窗口字段 TCP Window字段用于接收端通知发送端:接收端当前能够接收的字节数(即当前允许发送端发送的字节数).在TCP Header中占有16bit长度,如下所示 0 1 2 3 0 1 2 3 ...
- 201771010134杨其菊《面向对象程序设计(java)》第十五周学习
第十五周学习总结 第一部分:理论知识 JAR文件: 应用程序首选项存储: Java Web Start JAR文件: 1.Java程序的打包:程序编译完成后,程序员将.class文件压缩打包为.jar ...
- Windows PowerShell基本语法及常用命令
PowerShell常用命令: 一 Get类 1.Get-Command : 得到所有PowerShell命令,获取有关 cmdlet 以及有关 Windows PowerShell 命令的其他元素的 ...