Googlesheets, как использовать скрипт для подсчета количества десятичных знаков - PullRequest
0 голосов
/ 20 сентября 2018

Итак, у меня есть окно на листе googles, в которое пользователи вводят значение, которое затем переносится в основную электронную таблицу нажатием кнопки.У меня есть различные условия для уже принятого перевода, но так как значения предназначены для обозначения валютных сумм, я хочу, чтобы при вводе они составляли максимум 2 десятичных знака, а не округляли их.

Есть лифункция скрипта, которая позволила бы мне посчитать количество десятичных знаков?

1 Ответ

0 голосов
/ 26 сентября 2018

Я уверен, что для GAS LibraryApp должен быть какой-то оператор импорта, но я новичок в этом.Все функции любезно предоставлены этим сайтом / Брюс МакФерсон.Далее используются соответствующие функции для воспроизведения функциональности InStrRev, имеющейся в VBA.Возвращает позицию "." во входной строке.

TODO: Должен быть добавлен тест, который "."действительно присутствует.

Улучшения приветствуются.

function fixOptional(arg, defaultValue) {
    if (isUndefined(arg)) {
        return defaultValue;
    } else {
        return arg;
    }
}

function Len(v) {
    return CStr(v).length;
}
function IsMissing(x) {
    return isUndefined(x);
}

function CStr(v) {
    return v === null || IsMissing(v) ? "" : v.toString();
}

function isUndefined(arg) {
    return typeof arg === "undefined";
}

function InStrRev(inThisString,lookFor,optStart,optCompare) {
  var start = fixOptional (optStart, -1);
  var s = CStr(inThisString);
  start = start == -1 ? Len(s) : start ;
  return (s && lookFor) ? s.lastIndexOf(lookFor,start-1)+1 : 0;
}

Logger.log(InStrRev("20.00",".")-1);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...