请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

迷死特王

注册会员

2

主题

6

帖子

24

积分

注册会员

积分
24
  • 80

    金币

  • 2

    主题

  • 6

    帖子

最新发帖
迷死特王
注册会员   /  发表于:2025-6-10 22:31  /   查看:126  /  回复:7
1金币
本帖最后由 Wilson.Zhang 于 2025-6-11 09:12 编辑

求助各位大佬,条件格式,新增格式规则时,点击选中单元格输入坐标时,会带上表的sheet名,如何去除sheet名,只要坐标
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

不需要跨表引用,那您的使用场景是sheet内引用。 当条件格式已经存在的情况下,修改sheet名称能够同步到单元格引用。我试着模拟了下您说的使用环境,在导出前修改sheet名称,如下图所示: 设置条件格式规则如下图所示: 导出为xlsx文件经Microsoft Excel打开后条件格式规则依然有效,将其导入至SpreadJS,条件格式规则也有效,且单元格引用的sheet名称为修改后的名称,如下图所示: 您所说的导出的表sheet名称 ...

7 个回复

倒序浏览
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2025-6-10 22:31:20
来自 4#
本帖最后由 Wilson.Zhang 于 2025-6-12 16:11 编辑
迷死特王 发表于 2025-6-11 09:21
多谢大佬帮助,是这样的,我们系统导出的表,由于业务原因,会在sheet后面加上_基本格式,或者根据名称编 ...

不需要跨表引用,那您的使用场景是sheet内引用。

当条件格式已经存在的情况下,修改sheet名称能够同步到单元格引用。我试着模拟了下您说的使用环境,在导出前修改sheet名称,如下图所示:


设置条件格式规则如下图所示:


导出为xlsx文件经Microsoft Excel打开后条件格式规则依然有效,将其导入至SpreadJS,条件格式规则也有效,且单元格引用的sheet名称为修改后的名称,如下图所示:


您所说的导出的表sheet名称被修改是否这样的操作?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2025-6-11 09:12:00
2#
您好!对于“只为包含以下内容的单元格设置格式”而言,需要指定规则的区间范围,那么在引用单元格时可能存在跨表引用,便需要通过sheet名称识别被引用单元格,所以存在sheet名称是合理的。

请教下您出于什么应用而需要区域选择器不携带被引用单元格的sheet名称,了解下您的实际需求。
回复 使用道具 举报
迷死特王
注册会员   /  发表于:2025-6-11 09:21:50
3#
本帖最后由 迷死特王 于 2025-6-11 09:26 编辑
Wilson.Zhang 发表于 2025-6-11 09:12
您好!对于“只为包含以下内容的单元格设置格式”而言,需要指定规则的区间范围,那么在引用单元格时可能存 ...

多谢大佬帮助,是这样的,我们系统导出的表,由于业务原因,会在sheet后面加上_基本格式,或者根据名称编号组织等,自定义sheet名,导致的sheet名对应不上,一些管理规则失效这样子的

补充: 目前我们系统之间的单元格还不用跨表引用这样的操作
回复 使用道具 举报
迷死特王
注册会员   /  发表于:7 天前
5#
本帖最后由 迷死特王 于 2025-6-12 15:41 编辑

感谢大佬的解惑,收获很多,了解到我们这边并不是做的一个前台调整,而是后台处理了sheet名,但其他规则没有匹配上导致。


但是由于服务端暂时没有时间做出有效调整,这边暂时处理了下在表格保存时候,找到规则,并遍历晒出了规则前的索引,但不确定写法以及会不会导致其他问题,还请大佬帮忙指点下,如果不用后台,这么临时修改可以嘛,或者有什么更好的方法,或事件监听嘛


补充: 单个页签的情况,咱们可以作为bug修复嘛,测试最新版本也存在该问题,但是测试excel是可以单个页签不显示sheet表的索引,跨表时才展示

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:6 天前
6#
本帖最后由 Wilson.Zhang 于 2025-6-13 10:14 编辑
迷死特王 发表于 2025-6-12 15:13
感谢大佬的解惑,收获很多,了解到我们这边并不是做的一个前台调整,而是后台处理了sheet名,但其他规则没 ...

我在SpreadJS的15.2.5和18.0.6版本测试,通过UI或者代码修改sheet名称能同步变更条件格式规则中单元格引用的sheet名称。条件格式单元格引用是公式引用,sheet名称的变动能同步修改公式引用中单元格的sheet名称信息。

关于条件格式规则,SpreadJS在sheet内引用和跨sheet引用时均记录被引用单元格所在sheet名称,而且如上所述在sheet名称修改时能够同步引用中的sheet名称。Microsoft Excel虽然在sheet内引用不显示单元格sheet名称,但是跨sheet引用也记录了sheet名称,同样地当sheet名称变更时也能同步。

究其原因,这种差异不影响两个产品各自对单元格引用中sheet名称的同步管理,因此我理解这不是bug。如果是在SpreadJS中修改了sheet名称,而各单元格引用仍然是原来的sheet名称,那不合理。您遇到的问题是由于“后台”修改了sheet名称导致没能将sheet名称同步至相关引用单元格处,您这里提到的“后台”是怎样的操作方式?

另外,参考您提供的代码片段图示,有如下更正:
1. sheet.conditionalFormats返回值没有rules属性,通过getRules()能获取sheet中所有条件格式。
2. 在遍历过程中,使用了value1和value2,item所属具体类型为GC.Spread.Sheets.ConditionalFormatting.NormalConditionRule,其中的value1和value2均为方法,而非属性。
回复 使用道具 举报
迷死特王
注册会员   /  发表于:6 天前
7#
Wilson.Zhang 发表于 2025-6-13 10:06
我在SpreadJS的15.2.5和18.0.6版本测试,通过UI或者代码修改sheet名称能同步变更条件格式规则中单元格引 ...

感谢大佬给予的建议,在自测试过程中确实也发现了问题,我们再处理下这块逻辑尝试处理下的。
上面所说的后台是指,服务端在导出过程中单纯修改了sheet名,导致了后面规则中的sheet名称逻辑失效,或者没有完全适配规则的导出逻辑。从而产生了直接从表格控件修改导致的差异。目前我是这么离家,再次感谢大佬回帖
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:6 天前
8#
迷死特王 发表于 2025-6-13 11:01
感谢大佬给予的建议,在自测试过程中确实也发现了问题,我们再处理下这块逻辑尝试处理下的。
上面所说的 ...

我和您的理解和猜想是一样的,请教下服务端使用的是什么组件?
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部