在excel中,如何實現讓下一行永遠等於上一行加一,在刪除當中某一行之後保證之後都不出現亂碼?

比如我現在1,2,3,4,5……當我刪除3這一行時,下面的行都往上移,該行小時,而2下面依然是3,4,5……而不是1,2,4,5……


其實,直接用row()就好了吧


早上試過了

Offset(自己,-1,0)+1是可以用的,只是第一個參數不能缺。

直接引用上一行,這個應該最直觀了。

昨天寫那個公式,分割線下面,經測試,也沒有問題。

——————————————

Offset($a$1,row()-2,0)+1根據首行位置調整row()-x

沒電腦,理論上只要不刪除第一行,應該都不會出問題……

我在考慮,第一個參數預設是什麼效果,

如果可以引用『』自己『』,向上偏移一行,應該是比較完美的。

有電腦的同志可以幫忙試試……

我明天試了再來改,先這樣吧。


思路很簡單:根據當前單元格的行列數,獲取上一單元格的行列數,再取值加1。

確定思路後找對應的函數來實現,假設A1中的值是1,在A2輸入以下公式,下拉即可

=INDIRECT(ADDRESS(ROW(A2)-1,COLUMN(A2)))+1


@神鋒的思路很棒,但是如果涉及到隱藏的話就不方便了。

我補充一個,假定有一個全部不為空的輔助列B。

原數據 A列公式=SUBTOTAL(103,$B$2:B2)下拉。

可以實現以下情況:

1、刪除:(輔助列序號刪除了3的倍數)

2、隱藏:(輔助列序號隱藏了2的倍數)

3、插入:(如果有列內容插入,只需重新將A列公式向下填充即可)


親測可用。

只需要一個公式:=(2*SUM($A$2:$A X )+0.25)^(0.5)+0.5

X為所在單元格的行數-1,如在「A8」單元格輸入公式,那麼X就是7,剩下的一拉就行了。

要求:A2單元格必須為1。(其實不為1也可以,但需要修改公式,較為麻煩,估計這種情況應該也很少,如需要可留言。)


A1輸入任意值,A2=INDIRECT(CONCATENATE("A",ROW()-1))+1


直接ROW()+C就OK了 呀


推薦閱讀:

麻煩有excel高手幫我解釋下sumif(B:B,B:B,A:A)具體是什麼?
資料庫是什麼?它與 Microsoft Excel 有什麼區別?
有哪些系統學習excel的書?
怎麼讓excel不轉換為科學計數法?

TAG:MicrosoftExcel | Excel使用 |