大佬教程收集整理的这篇文章主要介绍了尝试在 Google Apps 脚本中编写 IF/AND 语句,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经彻底搜索过,但找不到解决方案。 我正在尝试在 Google Apps 脚本中编写 IF/AND 语句。我将有 2-3 个条件,其值分别来自 2-3 列。这是我希望脚本执行的操作
如果 A 列是“abco”,B 列是“swift”,则 D 列中的“双栈”
如果 A 列是“safeco”,B 列是“dhl”,C 列是“Airway”,则 D 列中的“单堆”
A、B 和 C 列都有几个下拉选项,不同的组合会触发 D 列中的不同消息,例如“单个堆栈”。该脚本必须在 12 个不同的选项卡上工作,每个月 1 个。这是我尝试过的。感谢您对此的任何帮助。
function onEdit(E) {
var ss = SpreadsheetApp.getActiveSheet();
var r = ss.getActiveCell();
var celladdress ='D'+ r.getRowIndex()
var value = (typeof e.value == "object" ? e.range.getValue() : e.value);
if (r.getcolumn() === 1 && value == "abco" && r.getcolumn()=== 2 && value == "swift" && ss.getname()=='January'){
ss.getRange(celladdress).SETVALue('double stack');
}}
我要开始了。看看你现在能不能自己完成:
function onEdit(E) {
const sh=e.range.getSheet();
const v=sh.getRange(e.range.rowStart,1,3).getValues()[0];
if(v[0]=='abco' && v[1]=='swift') sh.getRange(e.range.rowStart,4).SETVALue('double stack');
,
您当前代码中的问题是您只是使用 e.range.getValue()
您真正需要做的只是获取修改后的单元格的行索引,并在检查 A 到 C 列的值和设置 D 列的值时使用该行索引
function onEdit(E){
var ss = e.source;
var sheet = ss.getActiveSheet();
var row = e.range.getRow();
var col = e.range.getcolumn();
var validSheets = ["January","February","March"];
var value = [];
//check if modified cell is in column A to D and not the header row 1.
//Modified sheet should be listed in the validSheets
if(row > 1 && col <= 4 && validSheets.includes(sheet.getName())){
//Get current row values from column A to C
//Convert the 2-d array of values to 1-d array using flat()
value = sheet.getRange(row,3).getDisplayValues().flat();
if(value[0] == "abco" && value[1] == "swift"){
sheet.getRange(row,4).SETVALue("double stack");
}
if(value[0] == "safeco" && value[1] == "DHL" && value[2] == "Airway"){
sheet.getRange(row,4).SETVALue("single stack");
}
}
}
e.source
validSheets
validSheets
中
我更喜欢使用 getDisplayValue() 而不是 getValue() 因为它会将单元格的显示值作为字符串返回
以上是大佬教程为你收集整理的尝试在 Google Apps 脚本中编写 IF/AND 语句全部内容,希望文章能够帮你解决尝试在 Google Apps 脚本中编写 IF/AND 语句所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。