添加验证脚本,需要设置值
Add validation script, need to set values
您好,在 Google Apps 脚本中,我需要一个帮助。
我创建了一个脚本,它会在进行编辑时(编辑时)将验证添加到选项卡内的一组行中。
该脚本根据需要创建验证,但我想自动添加验证列表中的第一个值,希望这是有意义的。
我目前的代码如下:
function Headersizedropdown() {
var tabLists = "headersizes validations";
var tabValidation = "Listing2.0";
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var datass = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(tabLists);
var activeCell = ss.getActiveCell();
if(activeCell.getColumn() == 3 && activeCell.getRow() > 7 && ss.getSheetName() == tabValidation){
activeCell.offset(0, 32).clearContent().clearDataValidations();
var CatTeam = datass.getRange(1, 1, 1, datass.getLastColumn()).getValues();
var makeIndex = CatTeam[0].indexOf(activeCell.getValue()) + 1;
if(makeIndex != 0){
var validationRange = datass.getRange(3, makeIndex, datass.getLastRow());
var validationRule = SpreadsheetApp.newDataValidation().requireValueInRange(validationRange).build();
activeCell.offset(0, 32).setDataValidation(validationRule)
activeCell.offset(0, 32).setValue(datass.getRange().getRow() == 3)
}
}
}
activeCell.offset(0, 32).setValue(datass.getRange().getRow() == 3)
我知道这是最后一部分是错误的,但我尝试了几种方法但无法使其正常工作。希望你能帮忙。提前致谢
试试这个?
activeCell.offset(0,32).setValue(validationRange.getValues()[0][0]);
您好,在 Google Apps 脚本中,我需要一个帮助。
我创建了一个脚本,它会在进行编辑时(编辑时)将验证添加到选项卡内的一组行中。 该脚本根据需要创建验证,但我想自动添加验证列表中的第一个值,希望这是有意义的。
我目前的代码如下:
function Headersizedropdown() {
var tabLists = "headersizes validations";
var tabValidation = "Listing2.0";
var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var datass = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(tabLists);
var activeCell = ss.getActiveCell();
if(activeCell.getColumn() == 3 && activeCell.getRow() > 7 && ss.getSheetName() == tabValidation){
activeCell.offset(0, 32).clearContent().clearDataValidations();
var CatTeam = datass.getRange(1, 1, 1, datass.getLastColumn()).getValues();
var makeIndex = CatTeam[0].indexOf(activeCell.getValue()) + 1;
if(makeIndex != 0){
var validationRange = datass.getRange(3, makeIndex, datass.getLastRow());
var validationRule = SpreadsheetApp.newDataValidation().requireValueInRange(validationRange).build();
activeCell.offset(0, 32).setDataValidation(validationRule)
activeCell.offset(0, 32).setValue(datass.getRange().getRow() == 3)
}
}
}
activeCell.offset(0, 32).setValue(datass.getRange().getRow() == 3)
我知道这是最后一部分是错误的,但我尝试了几种方法但无法使其正常工作。希望你能帮忙。提前致谢
试试这个?
activeCell.offset(0,32).setValue(validationRange.getValues()[0][0]);