使用Google表格API在单元格中将格式设置为百分比

时间:2017-09-15 15:44:52

标签: c# .net google-sheets-api

我在创建单元格时尝试设置百分比格式,这是我的代码。

new Data.CellData
{
    UserEnteredValue = new Data.ExtendedValue
    {
        FormulaValue = "=(B2/C2)-1"
    },
    EffectiveFormat = new Data.CellFormat
    {
        NumberFormat = new Data.NumberFormat
        {
            Pattern = "00.0%",
            Type =  "NUMBER"
        }
    }
}

显示的当前值是“-0.2488570834”,我需要这个“-24.88%”。我缺少什么?

提前致谢。

1 个答案:

答案 0 :(得分:0)

尝试按照文档中提供的Number format examples进行操作: enter image description here

我还找到了sample code来测试这个(将格式转换为您的样本):

 var ss = SpreadsheetApp.getActiveSpreadsheet();
  var range = ss.getActiveRange();

  var rows = range.getNumRows();
  var cols = range.getNumColumns();
  for(var row = 1; row <= rows; row++) {
    for(var col = 1; col <= cols; col++) {
      var cell = range.getCell(row, col);
      var value = cell.getValue();
      if(typeof(value) == 'number') {
        cell.setNumberFormat("##.#%");
      }
    }
  } 

结果:

enter image description here

代码示例适用于Apps脚本,但C#的实现方式相同。将Pattern = "00.0%",更改为Pattern = "##.#%",

希望这有帮助。