我不确定这是否可能,但我正在开发一个项目,我想知道是否有一种方法可以利用谷歌应用程序脚本来搜索艺术家(A列)和歌曲名称(B列)并返回C 列中发布的年份。 然后,这些数据将用于一些分析和公式。
我对 Google 应用程序脚本不是很熟悉,但我知道与我一起工作的人已经使用它从谷歌地图中提取纬度/经度数据。
以下代码将按照所述执行活动工作表的搜索。
Column A
的文本搜索会找到与艺术家匹配的所有行。
使用 Column B
过滤行列表以匹配歌曲标题,并返回 Column C
中的值。
function getYearFromArtistNameAndSongTitle(artistName, songTitle) {
const sheet = SpreadsheetApp.getActiveSheet();
// Artist Name is in Column 'A'
const artistColumn = sheet.getRange("A:A");
const artistRows = artistColumn.createTextFinder(artistName).findAll();
// Song Title is in Column 'B'
function songTitleFilter(range) {
return sheet.getRange("B" + range.getRow()).getValue().toString().toLowerCase() == songTitle.toLowerCase();
}
// Release Year is in Column 'C'
return artistRows.filter(songTitleFilter).map((range) => sheet.getRange("C" + range.getRow()).getValue().toString()).flat();
}
function demo() {
const ui = SpreadsheetApp.getUi();
const result = getYearFromArtistNameAndSongTitle("Imagine Dragons", "Believer");
Logger.log(result);
ui.alert("Found: " + result);
}