找回密码
 立即注册

QQ登录

只需一步,快速开始

13397149125

注册会员

1

主题

2

帖子

9

积分

注册会员

积分
9
最新发帖
13397149125
注册会员   /  发表于:2020-5-22 19:10  /   查看:3211  /  回复:5
1金币
本帖最后由 13397149125 于 2020-5-22 19:12 编辑

我做行复制粘贴的时候,发现样式内容都可以拷贝过来,但是行高,列宽没有拷贝过来。
我试过在Exel里操作:
1. 如果是拷贝单元格(区域),行高,列宽是不会拷贝到目标位置的;
2. 如果是拷贝整行/整列, 行高/列宽是可以拷贝到目标位置的。

看了下官方文档提供的拷贝方法,有两个参数: fromRange/toRange , 试过几次,发现这两个参数只能是上述操作中的拷贝单元格(区域)
如果是要拷贝整行整列到目标位置,应该怎么写啊?

代码:
// 将A列复制到C列
            var fromRange = [new me.spreadNS.Range(0, 0, me.sheet.getRowCount(), 1)];
            var toRange = [new me.spreadNS.Range(0, 2, , me.sheet.getRowCount(), 1)];

            me.spread.commandManager().execute({ cmd: "clipboardPaste", sheetName: me.sheetName, fromSheet: me.sheet, fromRanges: fromRange, pastedRanges: toRange, isCutting: true, clipboardText: "", pasteOption: me.spreadNS.ClipboardPasteOptions.all });

以上代码不能把列宽带到目标列!

最佳答案

查看完整内容

是的行高列宽需要自己获取再设置,参考:

5 个回复

倒序浏览
最佳答案
最佳答案
Fiooona
论坛元老   /  发表于:2020-5-22 19:10:59
来自 4#
是的行高列宽需要自己获取再设置,参考:
  1. sheet.bind(GC.Spread.Sheets.Events.RowChanged, function (e, info)
  2.         {
  3.             var sheet = info.sheet;
  4.             if (info.sheetArea === GC.Spread.Sheets.SheetArea.viewport)
  5.             {
  6.                 sheet.copyTo(info.row + 1, 0, info.row, 0, 1, sheet.getColumnCount(), GC.Spread.Sheets.CopyToOptions.all);
  7.                 var rh = sheet.getRowHeight(info.row + 1, GC.Spread.Sheets.SheetArea.viewport);
  8.                 // 挂起事件响应
  9.                 sheet.suspendEvent();
  10.                 sheet.setRowHeight(info.row, rh, GC.Spread.Sheets.SheetArea.viewport);
  11.                 // 恢复事件响应
  12.                 sheet.resumeEvent();
  13.             }
  14.         });
复制代码
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
chan
注册会员   /  发表于:2020-5-25 13:10:57
2#
貌似办不到,跨程序复制没有样式,只有数据
回复 使用道具 举报
13397149125
注册会员   /  发表于:2020-5-25 14:47:41
3#
chan 发表于 2020-5-25 13:10
貌似办不到,跨程序复制没有样式,只有数据

跨程序? 不是的,就是在同一个sheet上复制粘贴。   第一列复制粘贴到第三列
回复 使用道具 举报
大白菜
中级会员   /  发表于:2021-3-19 16:55:15
5#
Fiooona 发表于 2020-5-22 19:10
是的行高列宽需要自己获取再设置,参考:

目前这个功能还是没实现,是吗?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-3-19 16:59:15
6#
大白菜 发表于 2021-3-19 16:55
目前这个功能还是没实现,是吗?

是的,要现实可以参考一楼提供的方法去做。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部