You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用OfficeOpenXml通过X++创建Excel时如何合并列单元格并解决编译报错

X++ 调用OfficeOpenXml API合并单元格解决方案

错误原因

你遇到的Invalid token '.'编译错误是因为X语法不支持C#风格的字符串索引器直接调用写法,CustTableWorksheet.Cells["B1:D1"]这种C#常用的调用格式在X中不符合语法规范。

正确实现方式

OfficeOpenXml本身提供了合并单元格的能力,在X++中需要通过get_Item方法获取单元格范围后再设置Merge属性,有两种常用写法:

  • 基于单元格地址字符串指定范围
// 合并B1到D1的横向单元格
CustTableWorksheet.Cells.get_Item("B1:D1").Merge = true;
  • 基于行号列号指定范围(更适合动态生成场景)
// 参数顺序:起始行号、起始列号、结束行号、结束列号,以下示例等效于合并B1到D1
CustTableWorksheet.Cells.get_Item(1, 2, 1, 4).Merge = true;

补充说明

合并后的单元格赋值、样式设置可以直接定位到合并范围的左上角单元格操作,也可以针对整个合并范围设置样式:

// 给合并单元格赋值
CustTableWorksheet.Cells.get_Item("B1").Value = "合并表头";
// 给整个合并范围设置水平居中
CustTableWorksheet.Cells.get_Item("B1:D1").Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center;

内容的提问来源于stack exchange,提问作者Aitor Ramos Pajares

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 15:24:05