После прочтения вашего вопроса я написал код, который соответствует вашим ожиданиям. Это рассматриваемый код:
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()
. Пожалуйста, не стесняйтесь комментировать мой ответ для получения дополнительной помощи или уточнения.