Google sheets Google Sheets巧妙地将数字转换为十亿/百万/千

Google sheets Google Sheets巧妙地将数字转换为十亿/百万/千,google-sheets,Google Sheets,我有以下数字的模板格式: [>=999950]0.0,,"M";[<=-999950]0.0,,"M";0.0,"K" [>=999950]0.0,,“M”;[我可以建议你正在寻找这样的东西 [>=999950]0.0,,"M";[<=-999950]0.0,,"M";#,,"-" [>=999950]0.0,,“M”[我认为你不能: 条件只能应用于前两个子格式,如果一个数字匹配多个,它将使用它匹配的第一个子格式。如果有第三个格式,它将用于“其他所有格式”,否则,如果

我有以下数字的模板格式:

[>=999950]0.0,,"M";[<=-999950]0.0,,"M";0.0,"K"

[>=999950]0.0,,“M”;[我可以建议你正在寻找这样的东西

[>=999950]0.0,,"M";[<=-999950]0.0,,"M";#,,"-"

[>=999950]0.0,,“M”[我认为你不能:

条件只能应用于前两个子格式,如果一个数字匹配多个,它将使用它匹配的第一个子格式。如果有第三个格式,它将用于“其他所有格式”,否则,如果一个数字不匹配任何一种格式,它将被渲染为所有“#”s填充单元格宽度。第四种格式始终用于文本(如果存在)


来源:

是的,但我仍然需要显示K值,正值和负值
function formatToMKZeros(range) {
  var values = range.getValues();
  return range.setNumberFormats(
    range.getNumberFormats().map(function(row, r) {
      return row.map(function(format, c) {
        return isNumeric(values[r][c])
          ? values[r][c] !== 0 && Math.abs(values[r][c]) < 999950
            ? '[<999950]0.0,"K";[>-999950]0.0,"K"'
            : '[>=999950]0.0,,"M";[<=-999950]0.0,,"M";#,,"-"'
          : format;
      });
    })
  );
}