- Вы хотите получить значения
AthPres
и AthEmail
, даже если диапазоны sheet.getRange(3, 8)
(H3) и sheet.getRange(3, 9)
(I3) изменены.
Если мое понимание верно, как насчет использования NamedRange? В случае использования NamedRange, даже если диапазон, который задан как именованный диапазон, изменяется, диапазон NamedRange автоматически изменяется, и значение можно получить с помощью NamedRange. Я думаю, что может быть несколько ответов для вашей ситуации. Поэтому, пожалуйста, подумайте об этом как об одном из них.
Поток выглядит следующим образом.
- Установите для «H3» и «I3» значение NamedRange.
- "H3" и "I3" используются из вашего вопроса.
- Получить значения с помощью NamedRange.
Пример сценария:
1. Установить NamedRange
Сначала установите NamedRange, используя этот скрипт. Конечно, вы также можете установить "H3: I3" как один NamedRange.
function myFunction1() {
var s = SpreadsheetApp.getActiveSpreadsheet();
var sheet = s.getActiveSheet();
var AthPresData = sheet.getRange(3, 8); // H3
var AthEmailData = sheet.getRange(3, 9); // I3
s.setNamedRange("AthPresData", AthPresData); // Set "H3" to NamedRange as "AthEmailData"
s.setNamedRange("AthEmailData", AthEmailData); // Set "I3" to NamedRange as "AthEmailData"
}
2. Получить значения
После установки NamedRange вы можете получить значения, используя NamedRange, используя этот скрипт. Даже если диапазон варьируется от «H3» и «I3» до других, вы можете получить значения, используя NamedRange.
function myFunction2() {
var s = SpreadsheetApp.getActiveSpreadsheet();
var names = ["AthPresData", "AthEmailData"];
var namedRanges = s.getNamedRanges();
for (var i = 0; i < namedRanges.length; i++) {
for (var j = 0; j < names.length; j++) {
if (namedRanges[i].getName() == names[j]) {
var value = namedRanges[i].getRange().getValue();
Logger.log("%s, %s", names[j], value)
}
}
}
}
Примечание:
- Это простой пример сценария. Поэтому, пожалуйста, измените его для вашей ситуации.
- Вы также можете вручную установить NamedRange на электронную таблицу.
Ссылки
Если я неправильно понял ваш вопрос, пожалуйста, скажите мне. Я хотел бы изменить его.