У меня есть большой набор данных, вставленный в Google Таблицы. Я хочу сравнить две колонки на этом листе. Первый столбец заполнен длинными строками, меня интересует только первый символ в каждой ячейке в этом столбце.
Второй столбец является текстовым. Я хочу вставить данные на новый лист , если строка в столбце A начинается с числа (не буквы) и текст в столбце B - «Early».
Моя задача - использовать Javascript, чтобы получить только подстроку из 1 символа для столбца A. Ошибка: «TypeError: str.substring не является функцией». Я также пробовал slice (), но безрезультатно. Разве это не поддерживается в скрипте приложений?
Как я могу выделить эти первые символы, а затем сравнить их с другим столбцом?
Затем мне также нужно sh строк, соответствующих этому критерию в обоих столбцах на новую вкладку.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('data');
var str = sheet.getRange('A:A').getValues();
var char = str.substring(0,2);
var stage = sheet.getRange('B:B');
var endColumn = sheet.getLastColumn();
var value_stage = (stage.getValues());
var value_char = (char.getValues());
var csh = ss.getSheetByName('new_sheet'); //destination sheet
var data = [];
var j =[];
for (i=0; i<value_char.length;i++) {
if
(
(
( value_char[i] == '0') ||
( value_char[i] == '1') ||
( value_char[i] == '2') ||
( value_char[i] == '3') || etc... )
&&
( value_stage[i] == 'Early')
)
data.push.apply(data,sheet.getRange(i+1,1,1,endColumn).getValues());
j.push(i);
}
}
csh.getRange(csh.getLastRow()+1,1,data.length,data[0].length).setValues(data);
ОБРАЗЕЦ ДАННЫХ НИЖЕ:
**ID** **Stage** **Name**
A texthere Early Bob
B abcdefgh Late Sally
52 texthere Early Jim
C thesdfas Late Allan
00 tsdfsdfd Late Susan
11 qqwerrww Early Ryan
Q tsdfsagd Early Sarah
98 fdsafads Early Evan
09 fdasfdsa Early Paul
10 abcdefgh New Megan
10 abcdefgh Early Cooper
NOTE: in the real dataset, columns A and B are actually K & L
И столбец ID имеет эти пробелы между ранней частью строки и конец. Это то, что я пытаюсь отрезать