李木子雷 发表于 2024-6-13 09:14:03

关于合并单元格统计时ctrl+左键与shift+左键不一致

有12行数据,每行都写入数据后,四行一合并,形成三个合并单元格,在统计时,使用Ctrl+鼠标左键选中图中三个合并单元格,count数为12,使用shift+鼠标左键选中三个单元格,count数为9,请问有什么办法使得统计数一样吗?

Richard.Ma 发表于 2024-6-13 09:14:04

使用 AddSpanCell 时,Spread 不会清除值,这个行为在新老版本都是一样的。

如果您想获得与Excel兼容的结果,请使用新的API添加合并的单元格
sheetView.AsWorksheet().Cells.Merge();

李木子雷 发表于 2024-6-13 09:17:43

使用的是spread16,附图是不同选择单元格的合计局部清晰截图

Richard.Ma 发表于 2024-6-13 18:27:34

能给一个通过Save方法保存的xml文件吗。我得加载看看,这个截图看不清楚你是怎么合并的

李木子雷 发表于 2024-6-14 09:22:37

Richard.Ma 发表于 2024-6-13 18:27
能给一个通过Save方法保存的xml文件吗。我得加载看看,这个截图看不清楚你是怎么合并的

因为公司电脑不能上外网,我大体写下代码过程,我们用的c#做的winform程序,在FORM中使用spread组件,没用到xml文件创建sheet页。
我们的用法是在FORM中引用spread组件,在spread下创建sheet页。截图的例子是循环给sheet赋值,然后通过rowspan合并单元格。代码主要内容如下
for(int i =0;i<1002;i++){
sheetView.Cells[i,0].text =Convert. ToString(i * 10);
sheetView.Cells[i,0].text =Convert. ToString(i * 11);
sheetView.Cells[i,0].text =Convert. ToString(i * 12);
sheetView.Cells[i,0].text =Convert. ToString(i * 13);

sheetView. Cells.RowSpan = 4;
sheetView. Cells.RowSpan=4;
sheetView.Cells.RowSpan =4;

李木子雷 发表于 2024-6-14 09:33:33

Richard.Ma 发表于 2024-6-13 18:27
能给一个通过Save方法保存的xml文件吗。我得加载看看,这个截图看不清楚你是怎么合并的

找到spreadsave保存xml的方法,但是没法上外网,我上边给的简单代码就是用rowspan合并,没有别的特别合并方式

Richard.Ma 发表于 2024-6-17 09:36:43

没有复现你说的问题,你说的两种操作两种方法都试过了,都是统计了3个单元格
使用的是V17,建议你也可以升级测试一下

李木子雷 发表于 2024-6-17 14:26:58

Richard.Ma 发表于 2024-6-17 09:36
没有复现你说的问题,你说的两种操作两种方法都试过了,都是统计了3个单元格
使用的是V17,建议你也可以升 ...

麻烦问下,你这个图里是7-18行都赋上值后,再合并单元格的结果吗?

Richard.Ma 发表于 2024-6-18 18:31:14

是的,刚刚也测试了一下v16,和你截图中一样,会统计被合并单元格隐藏的单元格

所以你可以升级一下,应该就可以解决问题

regarmy 发表于 2024-6-19 10:46:06

本帖最后由 regarmy 于 2024-6-19 10:48 编辑

V17.1,楼主的问题重现:file:///C:/_Management/2024/%E6%A1%88%E4%BE%8B%E5%BA%93/WXWorkLocal_171876497742.png
页: [1] 2
查看完整版本: 关于合并单元格统计时ctrl+左键与shift+左键不一致