簡體   English   中英

如何鎖定由公式確定的單元格的復制值並防止它在公式中引用的單元格發生更新時更新?

[英]How do I lock a cell's copied value determined by a formula and prevent it from updating when the referenced cell in formula does?

我正在處理的工作表根據用戶在表單中輸入的信息和時間戳在用戶首次提交谷歌表單時生成請求號。 現在,因為我需要用戶能夠稍后編輯他們的響應,這會導致重新提交表單,所以我希望不重新生成請求編號,並保持與最初生成時相同。 當單元格包含引用更新單元格的公式時,是否有任何方法可以防止單元格從其初始值更改?

這是單元格中包含的公式,我不想與它的引用一起更新:

=ARRAYFORMULA(ARRAY_CONSTRAIN(if(ROW(A:A)=1, "Request ID", if(D1:D="", "",C1:C&"-"&G1:G&"-"&N1:N)), MAX(if(D1:D="",0,ROW(D1:D)))-ROW()+1,1))

該公式將從表單接收到的不同值附加在一起以創建請求編號(格式實質上為 C1:C-G1:G-N1:N,時間戳-系統-首字母),並且數組公式和約束確保將公式復制到每一行在到目前為止包含表單響應的工作表中。 我希望這個請求編號保持與它的初始值相同,即使列 C、G 和 N 發生變化。

編輯:不太確定如何提供迄今為止我嘗試過的搜索歷史記錄,因為我一直在尋找可以解決此問題的任何方法,因為它很重要。 我研究了間接引用、絕對引用,考慮使用PropertiesService (Google Apps Script) 來存儲請求號之前是否已啟動並卡在那里,考慮將值復制到另一列以存儲它,但再次自動更新當然,鏈接單元所附帶的功能仍然是一個問題。 我被困在可以使用哪種功能/解決方法來實現這一點。 期待你的想法。 我還嘗試了許多其他策略。

由於每次使用公式重新計算電子表格時都會重新計算公式,因此在當前電子表格版本中保留原始值不是正確的方法。 實現這一點的方法是使用腳本記錄這些值。

已經有很多關於使用腳本將值從一張紙記錄到另一張紙的問題。 這里有幾個例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM