[英]Copy cell value of volatile function on form submission in Excel/Google Sheets
[英]Google Sheets - Reformat date on form submission
問題
我有一個 Google 表單,可以將數據正確記錄到 Google 表格中。 但是,登錄到 Google Sheet 時的日期格式是DD/MM/YYYY 。
期望的結果
每當提交新表單時將日期格式化為MM/DD/YYYY (因此每當創建新行時)。
到目前為止我所擁有的
記錄日期的工作表
可以在制作表單觸發器時運行腳本。 到目前為止,我的應用程序腳本是這樣的:
代碼.gs
function respondToFormSubmit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
// Format column I
var column = sheet.getRange("B:B");
// Set new date format on column I
column.setNumberFormat('mm/dd/yyyy');
};
我得到的當前錯誤
TypeError: Cannot call method "getSheets" of null.
我不確定為什么它返回null
因為當前腳本正確鏈接到 Google 表單。
在提交新表單時,如果 B 列的日期格式為MM/DD/YYYY ,我如何才能獲得所需的結果?
答案如下:
我不確定為什么它返回 null 因為當前腳本正確鏈接到 Google 表單。
如果您的腳本鏈接到 Google 表單,則“getActiveSpreadsheet()”方法將不起作用。 腳本必須綁定到 Google 電子表格才能執行此方法。 對於表單綁定腳本,請使用以下代碼:
var ssId = form.getDestinationId();
var ss = SpreadsheetApp.openById(ssId);
此外,每次提交新表單條目時設置數字格式是多余的,您可以簡單地選擇整個 B:B 范圍,轉到格式 -> 數字 -> 自定義數字格式並輸入 dd/mm/yyyy。 每個新表單提交都將自動格式化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.