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

QQ登录

只需一步,快速开始

wbd_963

注册会员

2

主题

5

帖子

19

积分

注册会员

积分
19
最新发帖
wbd_963
注册会员   /  发表于:2019-2-14 14:18  /   查看:3823  /  回复:5
本帖最后由 wbd_963 于 2019-2-15 09:36 编辑

var colHeader = sheet.getText(0, j, GC.Spread.Sheets.SheetArea.colHeader);
var rowHeader = sheet.getText(i, 0, GC.Spread.Sheets.SheetArea.rowHeader);
console.info("22222222",GC.Spread.Sheets.CalcEngine.formulaToRange(sheet, colHeader+rowHeader,0,0))

//能获取A1这个坐标
var range=GC.Spread.Sheets.CalcEngine.formulaToRange(sheet, colHeader+rowHeader,0,0)

获取坐标后如何给这个cell设置? 只能解析rang里面拿到 row 和cell 然后通过sheet.setvalue(row,cell,value); 来设置值吗?  这样的话需要单独解析下range,有没有不用解析直接设置值得方法?

5 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-2-14 15:47:53
沙发
看您的代码,可以直接用sheet.setValue(i, j, value)给单元格赋值,为什么要获取行列相对公式再赋值呢?
回复 使用道具 举报
wbd_963
注册会员   /  发表于:2019-2-14 17:14:34
板凳
dexteryao 发表于 2019-2-14 15:47
看您的代码,可以直接用sheet.setValue(i, j, value)给单元格赋值,为什么要获取行列相对公式再赋值呢?

上面的代码是i和j是我的一个测试。
我要转换成A1这样的格式存到数据库中,然后打开页面从数据库取出A1之后,要把A1转换成01的格式,然后再去给它赋值
代码是这样的写的
  $.each(data.data, function(i,val){
                        var range=GC.Spread.Sheets.CalcEngine.formulaToRange(sheet,val.cellId,0,0);
                        sheet.setValue(range.row,range.col, val.collectType);
                        sheet.getCell(range.row,range.col).backColor("yellow");
                    });

我想问问还有没有更优化的写法
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-2-14 18:07:18
地板
您好,针对您的需求,这个方法已经是最优化的方法了,

formulaToRange就是SpreadJS提供的坐标转换接口。
回复 使用道具 举报
wbd_963
注册会员   /  发表于:2019-2-15 09:35:20
5#
KevinChen 发表于 2019-2-14 18:07
您好,针对您的需求,这个方法已经是最优化的方法了,

formulaToRange就是SpreadJS提供的坐标转换接口。

哦 好的 谢谢
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2019-2-15 10:03:29
6#
不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部