找回密码
 立即注册

QQ登录

只需一步,快速开始

王五子
金牌服务用户   /  发表于:2024-12-5 14:00  /   查看:181  /  回复:7
1金币
单元格选中多个区域时如何获取当前选中的多个区域
image.png306867064.png



第一个图片是选中区域后按Ctrl键继续选其他区域,那么如何获取到此时sheet中选中的所有区域呢?并且如何区分选完当前区域后更换其他选区 与 选完当前区域后继续Ctrl添加选区,

目前的selectchanged事件只能拿到最新选区,而得不到所有选区

最佳答案

查看完整内容

您好!可以通过Worksheet:getSelections()获取当前sheet中所有被选中的区域,返回结果是一个数组,如下图所示: 而且,通过SelectionChanged事件也能监听到所有被选中的区域,该事件会将区域变化前的旧区域和变换后的新区域分别记录在属性oldSelections和newSelections中,newSelections中记录了当前的所有选中区域,如下图所示: 正如您所说的,newSelections记录的是当前选中的所有区域。通过对比oldSelections和new ...

7 个回复

倒序浏览
最佳答案
最佳答案
Wilson.Zhang
超级版主   /  发表于:2024-12-5 14:00:39
来自 2#
本帖最后由 Wilson.Zhang 于 2024-12-5 14:27 编辑

您好!可以通过Worksheet:getSelections()获取当前sheet中所有被选中的区域,返回结果是一个数组,如下图所示:
1733379406426.png544910583.png


而且,通过SelectionChanged事件也能监听到所有被选中的区域,该事件会将区域变化前的旧区域和变换后的新区域分别记录在属性oldSelections和newSelections中,newSelections中记录了当前的所有选中区域,如下图所示:
1733379793142.png963503417.png

正如您所说的,newSelections记录的是当前选中的所有区域。通过对比oldSelections和newSelections中的区域,即可得到最新添加的区域。
回复 使用道具 举报
王五子
金牌服务用户   /  发表于:2024-12-5 15:06:55
3#
Wilson.Zhang 发表于 2024-12-5 14:16
您好!可以通过Worksheet:getSelections()获取当前sheet中所有被选中的区域,返回结果是一个数组,如下图所 ...

selectionchanged记录的新旧信息是什么规则呢,这边获取到的信息很奇怪哎
image.png666817626.png
image.png958276672.png
第一次选区时没有获取到区域,只有一个单元格
后边的增加选区,new和old的值是同步的,拿不到最新的选区,比如说最后选了三个区 但是拿到的数组只有前两个
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-12-5 15:51:13
4#
王五子 发表于 2024-12-5 15:06
selectionchanged记录的新旧信息是什么规则呢,这边获取到的信息很奇怪哎

如果每次在当前选区的右侧增加一列新选区,那么,每次SelectionChanged事件监听到的newSelections总是比oldSelections多一个区,且除此之外的其他区都一致。

参考您提供的信息,我在17.1.9版本和最新17.1.10版本测试均未能复现您图示中的问题,如下动图所示。请教下您使用的版本号,以及您的具体操作方式。
SelectionChanged事件.gif
回复 使用道具 举报
王五子
金牌服务用户   /  发表于:2024-12-5 16:30:57
5#
Wilson.Zhang 发表于 2024-12-5 15:51
如果每次在当前选区的右侧增加一列新选区,那么,每次SelectionChanged事件监听到的newSelections总是比o ...

找到问题了,感谢感谢
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-12-5 16:32:15
6#
王五子 发表于 2024-12-5 16:30
找到问题了,感谢感谢

不客气,请教下是操作方式影响的吗?
回复 使用道具 举报
王五子
金牌服务用户   /  发表于:2024-12-8 16:46:08
7#
Wilson.Zhang 发表于 2024-12-5 16:32
不客气,请教下是操作方式影响的吗?

是的
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:2024-12-9 08:32:06
8#

解决了就好,那就结贴了。如有新问题,欢迎发新帖沟通。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部