Как назначить значение переменной из соседних ячеек другой ячейки в листах Google - PullRequest
2 голосов
/ 07 апреля 2020

Привет, поэтому я создал скрипт в листах, чтобы ежедневно извлекать значение из ячейки, но я собираюсь добавить еще одну строку, которая показывает прибыль или убыток за день.

// Record history from a cell and append to next available row
function recordValue() {
   var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Matt");
    var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yy");
    Logger.log(formattedDate);
    var value =sheet.getRange("$c$14").getValue();
    // var profit = ((cell to the left) - (cell above the cell to the left));
    sheet.appendRow([,formattedDate, value, profit]);
}

Я пытаюсь создать переменную «прибыль», захватывая значение из ячейки слева от активной ячейки и вычитая ячейку выше этой (слева и вверх от активной ячейки). ). Любая помощь будет оценена, спасибо

это изображение показывает, что я хочу быть частью сценария

1 Ответ

3 голосов
/ 07 апреля 2020

Выполнение некоторых операций с буквой столбца и номером строки: это почти ваш код, за исключением того, что у нас есть две новые переменные cellLeftValue и cellAboveLeftValue, обе они вычисляют левое значение с помощью String.fromCharCode для вычисления левой буквы:

function recordValue() {
   var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Matt");
    var formattedDate = Utilities.formatDate(new Date(), "GMT", "dd/MM/yy");
    Logger.log(formattedDate);
    var rowIndex = 14;
    var colIdx = 'c' ;
    var leftColIdx = String.fromCharCode(colIdx.charCodeAt(0) - 1);
    var value =sheet.getRange("$" + colIdx + "$" +rowIndex).getValue();
    var cellLeftValue = sheet.getRange("$" + leftColIdx + "$" +rowIndex).getValue();
    var cellAboveLeftValue = sheet.getRange("$" + leftColIdx + "$" + (rowIndex -1)).getValue();
    var profit = cellLeftValue - cellAboveLeftValue ;
    sheet.appendRow([,formattedDate, value, profit]);
}

Вы должны добавить код для проверки угловых случаев.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...