找回密码
 立即注册

QQ登录

只需一步,快速开始

动爸
金牌服务用户   /  发表于:2023-12-20 17:48  /   查看:935  /  回复:6
本帖最后由 Richard.Huang 于 2023-12-28 11:16 编辑

产品:GcExcel
版本:V6.2.5

GcExcel中如何获取带有公式的单元格集合,使用specialCells获取的不正确!
如果两个带有公式的单元格出现在一起,那么只会返回一条数据!!!如何处理?
如 A1:F1 合并后设置了公式,A2:F2也合并后设置了公式,那么返回的只有一条数据。请帮忙如何处理这个问题,一个一个单元格循环的话,效率太慢,急。

代码如下:
  1. IRange allRange = sheet.getCells().getUsedRange();
  2. /  查看所有的公式RANG
  3. IRange specialCells = allRange.specialCells(SpecialCellType.Formulas);
复制代码
  1. IAreas formulaAreas = specialCells.getAreas();
  2. System.out.println("###formulaAreas areacount=" + formulaAreas.getAreaCount());
复制代码

6 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-12-21 09:47:19
沙发
您好,猜测您的公式在sheet中是连成片的,而不是分割开来的,在这种情况下specialCells获取的公式单元格的Range就只有一个。

如果是分割开来的,那么就能获取到两个Range,如:

image.png784645995.png

image.png739327392.png

如果您想要获取一个sheet中所有的公式的话,目前来说只能通过遍历来实现,您这边为什么要获取一个sheet中所有的公式呢?
SpreadJS 17.0.9 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
动爸
金牌服务用户   /  发表于:2023-12-21 09:53:35
板凳
本帖最后由 动爸 于 2023-12-21 09:57 编辑
Joestar.Xu 发表于 2023-12-21 09:47
您好,猜测您的公式在sheet中是连成片的,而不是分割开来的,在这种情况下specialCells获取的公式单元格的R ...

业务上需要对每一个的引用公式进行处理。有一些公式需要后台GCEXCEL进行运行特殊的业务。如我需要对=IMAGE的进行处理,就使用上了。
另外,在GCEXCEL中使用IMAGE公式转PDF后显示不了啊。是怎么回事。

在前端中,我在SHEET1单元格A1中设置IMAGE,在SHEET2单元格B1中引用SHEET1的A1,结果在GCEXCEL转PDF时,只有A1可以显示,B1出现#NAME?.问题如何解决?
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-12-21 11:11:07
地板
您好,我注意到您在另一个帖子中提到了IMAGE函数的问题,您当前帖子的问题的目的是想解决IMAGE函数的问题吗?
SpreadJS 17.0.9 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
动爸
金牌服务用户   /  发表于:2023-12-21 11:20:11
5#
Joestar.Xu 发表于 2023-12-21 11:11
您好,我注意到您在另一个帖子中提到了IMAGE函数的问题,您当前帖子的问题的目的是想解决IMAGE函数的问题吗 ...

不是。这个是解决specialCells获取公式单元格的问题。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-12-21 14:29:13
6#
您好,正如之前所述,specialCells这个接口在获取公式的时候只能获取公式的范围,如果公式连成片,那么也就只能获取到一个范围。

如果您想要获取每个公式单元格中的公式,您可以遍历这个范围内的每一个单元格来实现。
SpreadJS 17.0.9 | GcExcel 7.1.2 已发布~
回复 使用道具 举报
JoeJin
超级版主   /  发表于:2023-12-26 15:48:45
7#
动爸 发表于 2023-12-21 11:20
不是。这个是解决specialCells获取公式单元格的问题。

您可以先根据specialCells获取单元格区域。
之后可以针对Area遍历每一个单元格,具体的代码如下。
https://www.grapecity.com.cn/dev ... earningPlan/Level2#遍历多个区域
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部