在Google Apps脚本中使用公式= PRINCPER()

发布于 2025-01-17 10:40:47 字数 1130 浏览 2 评论 0原文

需要法国的一些帮助。我尝试在没有成功的情况下使用Google Sheet Sheet Financial公式(通过Google Apps脚本)。

function financialCalculation() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
 
  var a = sheet.getRange(3,2).getValue()    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PRINCPER(${a};${b};${c};${d})`);    //#ERROR!    =PRINCPER(0.0019166666666666666;1;240;180000)  
  /* result of formula in sheet shows    =PRINCPER(0.0019166666666666666;1;240;180000))   
  /* result of formula SHOULD BE         =PRINCPER(0,0019166666666666666;1;240;180000)      with "," result is -591,38 €
  
};

在此处输入图像描述

Need some help from FRANCE. I try to use google sheet financial formulas ( through google apps script) without success.

function financialCalculation() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
 
  var a = sheet.getRange(3,2).getValue()    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PRINCPER(${a};${b};${c};${d})`);    //#ERROR!    =PRINCPER(0.0019166666666666666;1;240;180000)  
  /* result of formula in sheet shows    =PRINCPER(0.0019166666666666666;1;240;180000))   
  /* result of formula SHOULD BE         =PRINCPER(0,0019166666666666666;1;240;180000)      with "," result is -591,38 €
  
};

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

简单气质女生网名 2025-01-24 10:40:47

两种方法

function financialCalculation() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
  var a = sheet.getRange(3,2).getValue().toString().replace('.',',')    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PPMT(${a};${b};${c};${d})`);    
  
};

function financialCalculationV2() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
  var a = sheet.getRange(3,2).getValue()*12*10000    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PPMT(${a}/12/10000;${b};${c};${d})`);    
  
};

如果这对您不起作用,请替换PPMT由Princper替换

2 ways

function financialCalculation() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
  var a = sheet.getRange(3,2).getValue().toString().replace('.',',')    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PPMT(${a};${b};${c};${d})`);    
  
};

or

function financialCalculationV2() {
  var spreadsheet = SpreadsheetApp.getActive();
  var sheet = spreadsheet.getActiveSheet();
  
  var a = sheet.getRange(3,2).getValue()*12*10000    //     2,3%/12  = 0,1917%           (monthly borrowing rate)
  var b = sheet.getRange(11,1).getValue()   //     1                            (first period)
  var c = sheet.getRange(2,2).getValue()    //     240                          (twenty years of credit  = 240 periods)
  var d = sheet.getRange(1,2).getValue()    //     180000 euros                 (the value of a property)

  spreadsheet.getActiveRange().setFormula(`PPMT(${a}/12/10000;${b};${c};${d})`);    
  
};

if this doesn't work for you, replace PPMT by PRINCPER

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文