[英]How to generate an "id" on WEB google App Script?
我有這個腳本來將數據插入電子表格。
我創建了一個用日期和時間的值生成ID的方法,問題是太大了
示例: E1567301439829
有什么方法可以為每條記錄生成唯一的短 ID?
我想留下一個像: E001, E002, E003....
鏈接 Ws: https : //docs.google.com/spreadsheets/d/1OokFvWCx-ROkhaLP1nYQPDAu8zgCTeizHHq0ABnBL0A/edit#gid=0
function doGet(e){ Logger.log(e.parameter); return HtmlService.createHtmlOutputFromFile("index"); } function registrar(name){ var url = "https://docs.google.com/spreadsheets/d/1OokFvWCx-ROkhaLP1nYQPDAu8zgCTeizHHq0ABnBL0A/edit#gid=0" var ss = SpreadsheetApp.openByUrl(url); var ws = ss.getSheetByName("Página1"); var date = new Date().valueOf(); var idEntrada = 'E' + date ws.appendRow([idEntrada,name]); }
<html> <head> <base target="_top"> </head> <body> <label>Nome</label><input type="text" id="nome"> <button id="btn">Registrar</button> <script> document.getElementById("btn").addEventListener("click",salvar); function salvar(){ var campoNome = document.getElementById("nome").value; google.script.run.registrar(campoNome); document.getElementById("nome").value = ""; } </script> </body> </html>
這個答案怎么樣? 請將此視為幾個答案之一。
如果使用appendRow()
附加每一行,那么這個修改怎么樣?
var date = new Date().valueOf();
var idEntrada = 'E' + date
var idEntrada = 'E' + ('00' + ws.getLastRow()).slice(-3);
如果有幾個空行,這個修改怎么樣?
var date = new Date().valueOf();
var idEntrada = 'E' + date
var idEntrada = 'E' + ('00' + (ws.getRange("A2:A").getValues().filter(String).length + 1)).slice(-3);
如果我誤解了您的問題並且這不是您想要的方向,我深表歉意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.