Избавьтесь от негативных признаков от всей колонны - PullRequest
2 голосов
/ 20 апреля 2020

У меня есть столбец, в котором есть некоторые значения в виде $ ##. 00, а некоторые значения - $ ##. 00

Какой сценарий следует использовать для преобразования значений $ ##. 00 в $ ##. 00 значений, т. Е. Преобразование всех чисел в положительные?

Я пытался следовать, что далеко не работает;

function removNeg(){
  var sheet =SpreadsheetApp.openById('.........');
  var ss = sheet.getSheets()[0];
  var range = ss.getRange("M2:M");
  var values = range.getValues();
  var absValues = Math.abs(values);
  range.setValues(absValues);
}

1 Ответ

2 голосов
/ 20 апреля 2020
  • Вы хотите изменить отрицательные числа на положительные числа с помощью Google Apps Script.
  • Вы хотите добиться этого в ячейках M2:M.

Если мое понимание верно, как насчет этого ответа?

Модифицированный скрипт:

Когда ваш скрипт модифицирован, он выглядит следующим образом.

function removNeg(){
  var sheet =SpreadsheetApp.openById('.........');
  var ss = sheet.getSheets()[0];
  var range = ss.getRange("M2:M");
  var values = range.getValues();

  var absValues = values.map(([r]) => [!r || isNaN(r) ? r : Math.abs(r)]);  // Modified

  range.setValues(absValues);

  // range.setNumberFormats(values.map(([r]) => ["$##.00"]));
}

Примечание:

  • Если вы также хотите изменить формат чисел с -$##.00 на $##.00, используйте range.setNumberFormats(values.map(([r]) => ["$##.00"])); последней строки.
  • Пожалуйста, используйте этот измененный скрипт с включением V8.

Ссылка:

...