假设我在单元格A1中设置了一个随机数,每5分钟滚动1,2,3,4,5,6
如果排名第6,我想打印#34;祝贺!"在单元格B1中,永久保留(直到我重置)
说,在A1单元格中,它在20分钟后滚动了6,它打印出了#34;祝贺!"单元格B1,然后在5分钟后,单元格A1中的值变为3,但是祝贺!"留在单元格B1
是否有简单的功能或脚本来执行此操作?我该如何重置它?
答案 0 :(得分:0)
这应该这样做。设置一个时间驱动的触发器,每5分钟运行一次setRandom。这在A1中设置一个随机数,检查A1 = 6,B1是否为空。如果是,它将B1设置为"恭喜!"。它还会创建一个名为Reset的自定义菜单,该菜单会重置以清空B1。
function onOpen(){
SpreadsheetApp.getActiveSpreadsheet().addMenu(
'Reset', [
{ name: 'Reset', functionName: 'reset' },
]);
}
function setRandom() {
var ss=SpreadsheetApp.getActiveSpreadsheet()
var s=ss.getSheetByName("Sheet1")
var cell=Math.floor(Math.random() * 6) + 1 //Generate random number between 1 and 6 (6 is max and 1 is min)
s.getRange("A1") .setValue(cell) //Set A1 to random mumber
var val= s.getRange("B1").getValue() // Get B1 value
if(cell==6 && val==''){ // If Random Number is 6 and B1 is blank set B1 to "congratulations!"
s.getRange("B1").setValue("congratulations!")
}
else{return}
}
function reset(){
var ss=SpreadsheetApp.getActiveSpreadsheet()
var s=ss.getSheetByName("Sheet1")
var val= s.getRange("B1").setValue('')
}