Thi*_*ham 2 google-sheets google-apps-script
我正在尝试使用 .getSheetByName('') 来获取名称包含特定字符串(例如“V1”或“V4”)的工作表,而不是完全匹配。假设工作表的名称是“2020 0304 V1”,第一部分总是在变化,但它包含 V1,我尝试了 .getSheetByName('*V1') 但它不起作用。关于如何实现这一目标有任何提示吗?
不幸的是,在现阶段,像正则表达式这样的方法不能与getSheetByName()
. 所以在这种情况下,就需要使用变通办法。
在这个答案中,我想提出两种模式。
在此模式中,test
用于搜索工作表名称。getSheetName()
用于检索工作表名称。在本例中,它假设模式类似于2020 0304 V1
。
function myFunction() {
const searchText = "V1";
const sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
const regex = RegExp(`\\d{4} \\d{4} ${searchText}`);
const sheet = sheets.filter(s => regex.test(s.getSheetName()));
if (sheet.length > 0) console.log(sheet[0].getSheetName());
}
Run Code Online (Sandbox Code Playgroud)
\d{4} \d{4} V1
,您可以通过 检索该工作表sheet[0]
。在此模式中,includes
用于搜索工作表名称。getSheetName()
用于检索工作表名称。
function myFunction() {
const searchText = "V1";
const sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();
const sheet = sheets.filter(s => s.getSheetName().includes(searchText));
if (sheet.length > 0) console.log(sheet[0].getSheetName());
}
Run Code Online (Sandbox Code Playgroud)
V1
在您的电子表格中,您可以通过 检索该工作表sheet[0]
。 归档时间: |
|
查看次数: |
2199 次 |
最近记录: |