多语言展示
当前在线:763今日阅读:3今日分享:40

表格控件SpreadJS绝对引用和相对引用的设置

SpreadJS纯前端表格控件是基于HTML5的JavaScript电子表格和网格功能控件,适用于.NET、Java和移动端等各平台在线编辑类Excel功能的表格程序开发。Excel公式中的单元格引用有A1和R1C1两种格式,同时也有绝对引用和相对引用两种方式。SpreadJS完全支持Excel的引用方式。下面让我们了解下SpreadJS公式中的单元格引用。
工具/原料

纯前端表格控件:SpreadJS

方法/步骤
1

A1引用样式每一个单元格可以通过一个列字母加一个行数字的形式引用。列字母从A到Z然后从AA到ZZ,AAA到ZZZ……。行数字则从1到2,147,483,648。比如D50表示D列第50行。A1引用样式是最常用最熟悉的引用方式,也是SpreadJS默认的引用样式。

2

R1C1引用样式每一个单元格直接通过在行书和列数前加上R和C引用。例如R2C3表示第二行第三列的那个单元格。R1C1并不常用,但是通过在代码中设置公式非常方便,我们无需将已知单元格的行列转换成A1引用样式,直接通过字符拼接的方式便可生成公式,例如 formula = ‘R’+row+ ‘C’+col;SpreadJS使用referenceStyle方法设置引用样式。spread.referenceStyle(GcSpread.Sheets.ReferenceStyle.R1C1);//spread.referenceStyle(GcSpread.Sheets.ReferenceStyle.A1);

3

绝对引用和相对引用单元格相对引用是指单元格公式引用的单元格是相对于自己的位置。例如,当从单元格 C2 引用单元格 A2,实际上引用的单元格是两个列的左侧 (减去 A 的 C) 和 (2) 的同一行中。默认情况下,单元格引用是相对的。单元格绝对引用是指单元格公式中引用的单元格是sheet中的绝对位置,与自己的位置无关。在A1样式引用中,A1为相对引用,如使用绝对引用只需加上美元符号$,绝对引用A1单元格的公式为=$A$1。在 R1C1样式引用中,R1C1为绝对引用,相对引用时需要添加相对位置,比如R[-1]C[-1]表示相对自己行列各减1即左上角的单元格。

4

在使用中相对引用和绝对引用有什么区别呢?a) 粘贴复制时,相对引用复制的是相对关系,绝对引用指向同一个单元格。例如我们设置C3单元格引用A1

5

当我们将C3复制粘贴到C4时会发现C4指向了A2。

6

同样如果我们设置D3绝对引用A1

7

然后复制D3到D4,会发现D4仍然引用的是A1,这就是绝对引用。

8

b) 拖拽填充

9

当我们分别对相对引用单元格和绝对引用单元格拖拽填充,绝对引用始终指向同一个单元格,而相对引用还是指向相对位置。

10

混合引用混合饮用即同时使用相对引用和绝对引用,比如$A1,R[1]C1。

推荐信息