当我在两种语言中已经有 2 列单词时,如何通过其翻译替换谷歌工作表中的所有单元格



我有一个谷歌表格,上面写满了韩语英雄联盟冠军的名字。 我有另一张有 2 列的工作表,第一列中有韩语名称,另一列有英文名称。

我想用英文的等效名称替换第一张纸中的所有韩文名称。这听起来像是每个单元格的查找,但我不知道如何自动化它。

示例表:https://docs.google.com/spreadsheets/d/1LAflwQtkqCymqh0khimIQkbgSGaPANE-zg_H2hoU7t8/edit?usp=sharing

我在第一张名为"示例"的工作表中有韩语单元格,在第二张工作表">参考"中,我有 2 列(韩语和英语(。

读完你的问题后,我写了一个满足你期望的代码。这是有问题的代码:

function koreanTranslator() {
var spreadsheetID = "{SPREADSHEET ID}";
var koreanSheet = SpreadsheetApp.openById(spreadsheetID).getSheetByName(
"Example");
var koreanCells = koreanSheet.getRange(1, 1, koreanSheet.getLastRow(),
koreanSheet.getLastColumn()).getValues();
var equivalencesSheet = SpreadsheetApp.openById(spreadsheetID).getSheetByName(
"Reference");
var equivalencesCells = equivalencesSheet.getRange(2, 1, equivalencesSheet
.getLastRow(),
2).getValues();
for (var i = 0; i < koreanCells.length; i++) {
for (var j = 0; j < koreanCells[0].length; j++) {
for (var k = 0; k < equivalencesCells.length; k++) {
if (koreanCells[i][j] == equivalencesCells[k][0]) {
koreanSheet.getRange(i + 1, j + 1).setValue(equivalencesCells[k][1]);
}
}
}
}
}

代码将首先使用.openById()打开电子表格,然后用.getSheetByName()打开两个工作表。之后,它将使用.getRange()(用.getLastColumn().getLastRow()计算表的大小,因此您可以使用更大或更短的表而不更改代码(和.getValues()读取两个表。

最后,代码将遍历韩语表中的每个单元格,并将其与字典表进行比较;如果发现巧合,它将用.setValue()更新韩语表请不要犹豫,对我的回答发表评论,以获得进一步的帮助或更多的澄清。

最新更新