我有一个下拉列表,其中包含月份和年份的单元格A4 (2022年1月,2022年2月)。脚本将其正确地读取为字符串,但不执行实际的拆分。我试着阅读getValue或getDisplayValue()。
它返回一个字符串,但不想分割它。
function splitMonthYear() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName("Filter Dates");
let dateFilter = sheet.getRange("A4").getValue()
Logger.log("dateFilter : " + dateFilter + " typeof : " + typeof(dateFilter) + " - " + dateFilter.length)
String(dateFilter).split(" ")
Logger.log("dateFilter 2 : " + dateFilter + " typeof : " + typeof(dateFilter) + " - " + dateFilter.length)
Logger.log("dateFilter[0]: " + dateFilter[0] + " typeof : " + typeof(dateFilter[0]) )
let monthFilter = dateFilter[0];
let yearFilter = dateFilter[1]
Logger.log("monthFilter : " + monthFilter + " - yearFilter : " + yearFilter)
}发布于 2022-02-20 02:25:10
修改要点:
String(dateFilter).split(" "),dateFilter没有改变。请将其结果赋值给一个变量。A0而不是20。我认为以上两点可能是你提出问题的原因。当这些要点反映在您的脚本中时,如下所示。
发自:
String(dateFilter).split(" ")至:
dateFilter = String(dateFilter).split(String.fromCharCode(0xA0));20,而不是A0,请修改为dateFilter = String(dateFilter).split(" ");参考资料:
发布于 2022-02-20 00:23:18
function splitMonthYear() {
const ss = SpreadsheetApp.getActive();
const sheet = ss.getSheetByName("Sheet0");
let dv = sheet.getRange("A4").getDisplayValue().split(",");
dv.pop();
let a = dv.map(e => e.trim())
Logger.log(JSON.stringify(a));
}
Execution log
5:21:56 PM Notice Execution started
5:21:56 PM Info ["January 2022","February 2022"]
5:21:57 PM Notice Execution completedhttps://stackoverflow.com/questions/71190240
复制相似问题