Google apps script 谷歌应用程序脚本-匹配2个字符串';s
我一直在做一个新项目,我需要根据单元格值创建新的工作表Google apps script 谷歌应用程序脚本-匹配2个字符串';s,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我一直在做一个新项目,我需要根据单元格值创建新的工作表 function ign_list() { var nRange = SpreadsheetApp.getActive().getRangeByName("player") return nRange.getValues() } function sheet_list() { var out = new Array() var sheets = SpreadsheetApp.getActiveSpreadsheet().
function ign_list() {
var nRange = SpreadsheetApp.getActive().getRangeByName("player")
return nRange.getValues()
}
function sheet_list() {
var out = new Array()
var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
for (var i=0 ; i<sheets.length ; i++) out.push( [ sheets[i].getName() ] )
return out
}
function new_sheet() {
var ui = SpreadsheetApp.getUi();
var sheet_names = sheet_list();
var ign_names = ign_list();
for (var i=0; i<ign_names.length; i++){
for (var n=0; n<sheet_names.length; n++) {
if (ign_names[i] !="") {
if (ign_names[i] == sheet_names[n]) {
ui.alert(ign_names[i]+" Equal "+sheet_names[n])
} else {
ui.alert(ign_names[i]+" Not Equal "+sheet_names[n])
}
}
}
}
}
函数ign_list(){
var nRange=SpreadsheetApp.getActive().getRangeByName(“播放器”)
返回nRange.getValues()
}
功能表\u列表(){
var out=新数组()
var sheets=SpreadsheetApp.getActiveSpreadsheet().getSheets();
对于(var i=0;i您正在使用getValues()
方法。该方法返回一个行数组
即使您的范围仅限于一列,其结果也是:[[A1]、[A2]、[A3]、…]
您可以通过展平数组或使用ign\u names[i][0]
来解决此问题
希望这能有所帮助谢谢它奏效了,我花了两个小时试图解决这个问题,只是…这是一个很常见的错误。很高兴我能帮上忙!我不知道你是否能多帮点忙我知道使用indexOf更适合这种类型的验证,但始终给出-1,即使值等于Hello@drone,请搜索StackOverv是一个关于JavaScript中字符串比较的现有问题。
for (var i=0; i<ign_names.length; i++){
if (sheet_names.indexOf(ign_names[i][0]) != -1) {
SpreadsheetApp.getActiveSpreadsheet().insertSheet().setName(ign_names[i][0]);
} else {
}
}