Google apps script 谷歌应用程序脚本-设置一个固定长度的数字,用于在每次表单提交时在谷歌表单中自动增加ID号

Google apps script 谷歌应用程序脚本-设置一个固定长度的数字,用于在每次表单提交时在谷歌表单中自动增加ID号,google-apps-script,Google Apps Script,谷歌应用程序脚本- 请帮助我,我在使用谷歌应用程序脚本时遇到了问题。 我在Google Sheets中创建订单输入ID,但为了创建一个具有统一数字长度的整洁ID,我想我需要在Google Sheets中的自动递增编号之前重复一个'0'字符串多次(为ID设置固定长度的数字,如1,2…5…10将00010002…0005…0010) 到目前为止,我的自动递增数字函数已经可以正常工作了,只是重复的“0”函数不能正常工作 代码如下: function onFormSubmit(e) { var s

谷歌应用程序脚本- 请帮助我,我在使用谷歌应用程序脚本时遇到了问题。 我在Google Sheets中创建订单输入ID,但为了创建一个具有统一数字长度的整洁ID,我想我需要在Google Sheets中的自动递增编号之前重复一个'0'字符串多次(为ID设置固定长度的数字,如1,2…5…1000010002…0005…0010

到目前为止,我的自动递增数字函数已经可以正常工作了,只是重复的“0”函数不能正常工作

代码如下:

function onFormSubmit(e)
{
   var sheet = SpreadsheetApp.getActiveSheet();
   var row =  SpreadsheetApp.getActiveSheet().getLastRow();

   var tally = sheet.getRange("AG2").getValue();
   tally++;

   sheet.getRange(row,2).setValue(tally);
   sheet.getRange("AG2").setValue(tally);
*\\above is the code for the auto incrementing ID numbers*  

   if (tally.length<4) 
   {
     sheet.getRange(row,2).setValue('0'.repeat(4-tally.length), tally);
   }
*\\this is supposedly the code for setting up a fixed length of 4 digits for 
the ID but i was assuming that a javascript's: 'string'.repeat should work on 
google script.*
}
函数onFormSubmit(e)
{
var sheet=SpreadsheetApp.getActiveSheet();
var row=SpreadsheetApp.getActiveSheet().getLastRow();
var tally=sheet.getRange(“AG2”).getValue();
理货++;
表.getRange(第2行).设置值(计数);
表.getRange(“AG2”).setValue(计数);
*\\以上是自动递增ID号的代码*

下面的(tally.length示例可能会对您有所帮助。不要忘记在前导零前面加上,因为这会阻止工作表将输出格式化为数字。否则,它将忽略前导零

      var zeros = "00000000000000000000000";      
      var values = [];          
      for (var i= 0; i < maxValues; i++) {

        values.push(["'" + zeros.substring(-1, 4 - i.toString().length) + i]);

      }

      var range = sheet.getRange(startRow, startColumn, values.length, 1);
      range.setValues(values);  

    }
var zeros=“00000000000000000000000”;
var值=[];
对于(变量i=0;i
更新
Google Apps脚本基于不支持String.prototype.repeat()的ECMAScript标准。不幸的是,

可能重复@tehhowch这可能是部分重复,但我认为该用户得到错误结果的原因是在Google工作表中格式化。调用setValue(“0001”)在单元格上,将输出1,但如果您在数字前面加上一个撇号作为setValue(“0001”)中的前缀,则该数字将转换为保留前导零的文本