Google apps script 如何隔离范围对象?
事实上有两个问题:Google apps script 如何隔离范围对象?,google-apps-script,Google Apps Script,事实上有两个问题: 我试图理解Range对象以及如何在脚本计算中“脱离spreradsheet.app”。 下面是一个示例:我尝试在第一个“警报”之前从电子表格中获取一次“A1”范围对象,而不是永久对象。 怎么办 function myFunction() { SpreadsheetApp.getActiveSheet().getRange("a1").setBackground("blue") SpreadsheetApp.getActiveSh
我试图理解Range对象以及如何在脚本计算中“脱离spreradsheet.app”。
下面是一个示例:我尝试在第一个“警报”之前从电子表格中获取一次“A1”范围对象,而不是永久对象。
怎么办
function myFunction() {
SpreadsheetApp.getActiveSheet().getRange("a1").setBackground("blue")
SpreadsheetApp.getActiveSheet().getRange("a1").setValue("blabla")
const toto = SpreadsheetApp.getActiveSheet().getRange("a1")
var pos = toto.getA1Notation()
var col = toto.getBackground()
SpreadsheetApp.getUi().alert("you have pos : "+pos+" and col "+col)
SpreadsheetApp.getActiveSheet().getRange("a1").setBackground("orange")
var col = toto.getBackground()
SpreadsheetApp.getUi().alert("you have pos : "+pos+" and col "+col)
}
即使我说toto是常量,第二列也会变成“橙色”,我不想这样
编辑:在注释之后,range对象更像是一个“位置”,它可以跟随并更改用它构建的变量(甚至常量),而不是我可以用来创建变量的“对象”。
那么,我如何切断这个范围和变量之间的联系呢?谢谢^ ^根据谷歌应用程序脚本关于Range类的文档: 范围可以是图纸中的单个单元格,也可以是图纸中的一组相邻单元格 无法将范围与电子表格分开,因为范围是特定于范围类的对象,该范围类是电子表格应用程序的子类 因此,仅仅因为您将它分配给一个
常量
,并不意味着它不会改变;这是因为范围不是一个值,而const
用于定义对值的常量引用
如果不想更改属于A1
单元格的单元格颜色,只需删除这行代码:
SpreadsheetApp.getActiveSheet().getRange("a1").setBackground("orange");
参考文献
- )