找回密码
 立即注册

QQ登录

只需一步,快速开始

athenadeveloper

注册会员

6

主题

39

帖子

117

积分

注册会员

积分
117
athenadeveloper
注册会员   /  发表于:2024-11-6 16:17  /   查看:148  /  回复:12

1、打开2个浏览器页签,分别打开demo网站。
2、把一个页签的sheet单元格设置为会计专用,另一个页签的sheet不设置。
3、输入A001后,ctrl + C拷贝整个单元格内容,粘贴到另一个页签的单元格,发现内容有首位空格。
image.png312818907.png image.png983564453.png

请问,这是使用层面上的问题,还是bug呢?

12 个回复

倒序浏览
Wilson.Zhang
超级版主   /  发表于:7 天前
沙发
您好!通过ctrl+c复制单元格内容时,由系统剪贴板负责复制内容,SpreadJS负责粘贴来自系统剪贴板的所有内容。您遇到的问题,是由于系统剪贴板对内容首尾添加了空格字符所致,SpreadJS无法判断空格字符来自于系统剪贴板还是用户数据。您可以尝试从Excel复制相同的内容到txt或word文档观察粘贴内容,如下动图所示:
系统剪贴板.gif
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:7 天前
板凳
本帖最后由 athenadeveloper 于 2024-11-7 09:19 编辑
Wilson.Zhang 发表于 2024-11-6 17:38
您好!通过ctrl+c复制单元格内容时,由系统剪贴板负责复制内容,SpreadJS负责粘贴来自系统剪贴板的所有内容 ...

拷贝实际内容如下。
const pasteStr = ' A001 \n';

我尝试了microsoft的excel软件,同场景不会出现该问题。

而且试了spread的其他格式(数字、日期等),目前发现只有会计专用格式会存在该问题。
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:7 天前
地板
athenadeveloper 发表于 2024-11-6 17:53
拷贝实际内容如下。
const pasteStr = ' A001 \n';

从上述场景推断,空格是在spread拷贝的时候加上的,这个有办法处理吗?
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:6 天前
5#
athenadeveloper 发表于 2024-11-6 17:55
从上述场景推断,空格是在spread拷贝的时候加上的,这个有办法处理吗?

我分别在SpreadJS和Excel设置了货币专用格式的数据,并通过ctrl+c复制后经ctrl+v粘贴至word,如下动图所示。ctrl+c使用了操作系统的剪贴板,操作系统的剪贴板对此添加了空格字符。如果您的业务场景比较固定,可以对需要粘贴的Worksheet注册ValueChanged事件,当事件发生时,将数据前后的空格去除即可。您可以尝试下上述方案。
系统剪贴板.gif
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:6 天前
6#
Wilson.Zhang 发表于 2024-11-7 11:43
我分别在SpreadJS和Excel设置了货币专用格式的数据,并通过ctrl+c复制后经ctrl+v粘贴至word,如下动图所 ...

从execl拷贝到word会带空格。
从excel拷贝到excel,不会带空格,这一段交互spreadJs会后续兼容吗?
回复 使用道具 举报
Wilson.Zhang
超级版主   /  发表于:6 天前
7#
athenadeveloper 发表于 2024-11-7 12:17
从execl拷贝到word会带空格。
从excel拷贝到excel,不会带空格,这一段交互spreadJs会后续兼容吗?

如您所言,不同Excel之间复制粘贴不会带空格,可能是Excel做了相关处理。暂时不确定SpreadJS后续会否兼容,以研发评估为准,当下您可以参考在5楼提供给您的方案尝试自定义解决。
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:5 天前
8#
本帖最后由 athenadeveloper 于 2024-11-8 10:25 编辑
Wilson.Zhang 发表于 2024-11-7 17:03
如您所言,不同Excel之间复制粘贴不会带空格,可能是Excel做了相关处理。暂时不确定SpreadJS后续会否兼容 ...

再请教下,为什么spreadJs同一张表不同sheet拷贝没有问题,但是打开2张表,拷贝会有空格呢?
同表不同sheet拷贝没有空格,不同表拷贝有空格.gif
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:5 天前
9#
Wilson.Zhang 发表于 2024-11-7 17:03
如您所言,不同Excel之间复制粘贴不会带空格,可能是Excel做了相关处理。暂时不确定SpreadJS后续会否兼容 ...

5#的方案无法区分空格是用户数据,还是copy的时候加上的
回复 使用道具 举报
athenadeveloper
注册会员   /  发表于:5 天前
10#
看起来像是跨表copy的时候单元格的格式丢了。看之前的格式字符串,首尾空格应该是会计专用格式加上的,系统剪切板拿到的内容就已经包含首位空格了。
abeadbb626c9d37d47347fc0c420ac5.png25619811.png
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部