数据到位后停止运行公式

时间:2018-09-17 14:50:06

标签: excel google-sheets excel-formula formula

我正在寻找有关Excel的帮助,并在要突出显示的Google工作表中创建了问题。

我试图在第二列(D)中输入数据时获得一列(C)以自动填充值。自动填充的数据从单元格A1中提取。

单元格A1中的数据每周都会更改,我不希望将具有自动填充数据的行更新为新值。输入后,应设置数据。

例如,当在D列中输入一些文本时,C中的单元格将自动填充“ 1”。下周在A1中输入“ 2”。 C中的单元格不应从“ 1”更改为“ 2”。

您可以在下面的表格中看到我当前拥有的公式。 https://docs.google.com/spreadsheets/d/1W6xRqpEAiVxKye0whMJd7ODbwLQaOtDLQdEB59j4brY/edit?usp=sharing,一旦值出现,谁能帮助停止单元格的更新?

谢谢

2 个答案:

答案 0 :(得分:1)

因为有可能在Google表格中

=if(isblank(D3),A$1,C3)

在C3中,然后复制下来以适合。

需要设置电子表格设置...>计算>迭代计算为On(将Max number of iterations设为1即可),这不是一个好习惯。

只要相应的(即同一行)D列单元为空白,C列值将跟踪A1值。

在Excel中基本相同。

答案 1 :(得分:0)

使用公式是错误的。如果您不希望更新现有的星期数,则需要将星期数指定为一个值。您可以手动执行此操作,但是最简单的方法是使用宏(VBA)。在该工作表上插入一个形状(按钮),添加有意义的文本,分配一个宏(如下图所示)。然后,当您准备更新星期数时,只需单击按钮。

Sub updateweekid()
Dim weekid As Long
Dim lastweekrow As Long, lastclientrow As Long

'get week #
weekid = Cells(1, 1).Value


'week list is column C, row2
'Find the last non-blank cell in column C(3)
lastweekrow = Cells(Rows.Count, 3).End(xlUp).Row

'client list is column d, row2
'Find the last non-blank cell in column D(4)
lastclientrow = Cells(Rows.Count, 4).End(xlUp).Row


'loop though updating week number
For i = 1 To (lastclientrow - lastweekrow)
Cells(lastweekrow + i, 3).Value = weekid
Next i

End Sub