[英]Append new records on the last empty row (instead of ignoring last empty rows and adding the new row at the end of the sheet)
[英]Get max change between rows, ignoring empty cells at end of list
我有一個電子表格,我在其中跟蹤我的凈資產隨着時間的推移。 每月一次,我添加我的帳戶余額。
在一張紙上,我有這樣的結構:
日期 | 年 | 凈值 | 帳戶1 | 賬戶2 | 帳戶3 |
---|---|---|---|---|---|
2021 年 1 月 31 日 | 2021 | 320 美元 | 200 美元 | 140 美元 | -$20 |
2021 年 2 月 28 日 | 2021 | 340 美元 | 200 美元 | 150 美元 | -$10 |
2021 年 3 月 31 日 | 2021 | 410 美元 | 250 美元 | 200 美元 | -$40 |
2021 年 4 月 30 日 | |||||
2021 年 5 月 31 日 |
...rest 月份的一年
Year 列中的公式為=if(C3<>"", year(A3), "")
。
凈值列中的公式是=if(sum(D3:F3)<>0, sum(D3:F3), "")
。
問題:我想要一個列出 1 個月最大變化的單元格(因此 $410 - $340 = $70),而不必每個月更新公式。 (在一個理想的世界里,我永遠不需要再碰它,只需要每月輸入一次賬戶余額。)
到目前為止我得到了什么:
=if(
abs(min(ArrayFormula(C3:C400 - C2:C399)))=max(ArrayFormula(abs(C3:C400 - C2:C399))),
min(ArrayFormula(C3:C400 - C2:C399)),
max(ArrayFormula(C3:C400 - C2:C399))
)
但是,這包括從 $410 到""
的更改,這被強制更改為 $0。 因此,我得到的不是預期的 70 美元,而是 410 美元。
如何獲得最大的 1 個月變化,但忽略空字符串值?
解決它的最簡單方法就是放入我認為的 if 子句:
=ArrayFormula(max(if(C3:C400<>"",abs(C3:C400-C2:C399),)))
因為 Max 會忽略 If 語句生成的空字符串
或略短:
=ArrayFormula(max((C3:C400<>"")*abs(C3:C400-C2:C399)))
以便將任何空單元格的更改設置為零。
這些假設 C2 本身不是空白的!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.