你好,在我下面的鏈接中,我有一個用戶表單,我可以添加、編輯和洗掉用戶。
電子表格鏈接 https://docs.google.com/spreadsheets/d/1tyz_3WeEkmY4WX8Xvx38nkLow8hcbCjPMLS1-NiPFgo/edit?usp=sharing
開發鏈接 https://script.google.com/macros/s/AKfycbxIT4fJPNyD5U2CKFzWCSho0tR2uuczq1hevzHawtg/dev
所以現在所有上述欄位,如姓名、電子郵件、出生日期都將被保存并可以重新編輯。
我在電話號碼和國家/地區下方添加了 2 列
Daily Updates 和 Daily Logs
現在,當我在編輯用戶和更新今天的活動Daily Updates就像Something added on - 1-jan-2021
現在,應該在清除現場Daily Updates,并應進行更新Daily Logs field。如果我更新Something added on 2-jan-2021在Daily Updates它再次被清除,并出現在Daily Logs現場為以前和目前的
Something added on - 1-jan-2021
Something added on 2-jan-2021
所以我的目標是顯示對Daily Updates欄位所做的所有更改都應該出現在Daily Logs欄位中,因為它是只讀的,不能編輯。
uj5u.com熱心網友回復:
我相信你的目標如下。
- 當通過編輯“聯系人詳細資訊資料庫”中的資料并將值輸入到“每日更新”并單擊“提交”按鈕來加載值時,您想將該值保存到“每日日志”并想清除“每日更新”。
在這種情況下,如何進行以下修改?
修改后的腳本:
在這種情況下,請updateData按如下方式修改Google Apps Script 端的函式。
從:
function updateData(values, spreadsheetId, range) {
var valueRange = Sheets.newValueRange();
valueRange.values = values;
var result = Sheets.Spreadsheets.Values.update(valueRange, spreadsheetId, range, { valueInputOption: "RAW" });}
到:
function updateData(values, spreadsheetId, range) {
var len = values[0].length;
values[0][len - 1] = values[0][len - 1] ? `${values[0][len - 1]}\n${values[0][len - 2]}` : values[0][len - 2];
values[0][len - 2] = "";
var valueRange = Sheets.newValueRange();
valueRange.values = values;
var result = Sheets.Spreadsheets.Values.update(valueRange, spreadsheetId, range, { valueInputOption: "RAW" });
}
- 通過這種修改,當資料更新時,“每日更新”的值將作為附加值保存到“每日日志”中,并清除“每日更新”。
筆記:
- 從
Daily Logs field as read only this can't be edited.,在這種情況下,請放入readonly="readonly"“每日日志”的 textarea 標簽。
添加:
從以下回復來看,
如果我添加更多欄位,如姓氏、作業欄位等,我會繼續在電子表格中添加額外的列。
在這種情況下,如何使用列號如下?
到:
function updateData(values, spreadsheetId, range) {
var colDailyChanges = 8; // Column "H"
var colDailyLogs = 9; // Column "I"
values[0][colDailyLogs - 1] = values[0][colDailyLogs - 1] ? `${values[0][colDailyLogs - 1]}\n${values[0][colDailyChanges - 1]}` : values[0][colDailyChanges - 1];
values[0][colDailyChanges - 1] = "";
var valueRange = Sheets.newValueRange();
valueRange.values = values;
var result = Sheets.Spreadsheets.Values.update(valueRange, spreadsheetId, range, { valueInputOption: "RAW" });
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/377826.html
標籤:谷歌应用程序脚本 谷歌表格 谷歌表格公式 google-sheets-api 电子表格
上一篇:變數變灰?
