簡體   English   中英

將INDIRECT()與INDEX()函數一起使用

[英]Using INDIRECT() with INDEX() function

我有一個公式,希望可以將其向下拖動以自動完成許多行。

=COUNTA(INDEX(1:100,0,ROW(A1)))

此公式的目的是計算我每列中非空白單元的數量。 我知道我可以使用其他公式...

=COUNTA(EIM!A$1:A$100)

...並將其拖移,粘貼特殊值,然后粘貼特殊轉置,但是我想知道是否還有另一種(更優雅的)方式。 正如您在第二個公式中看到的那樣,我正試圖提取另一個工作表的值。 因此,我認為INDIRECT()是必經之路。

我的問題是:如何使用INDIRECT()結合使用INDEX()函數的第一個公式來實現此目的?

以下是當前公式計算時的屏幕截圖(不確定是否有幫助):

截圖

當然可以 ,但是應該嗎?

為此,您可以通過間接指定false來使用R1C1樣式:

=COUNTA(INDIRECT("EIM!R1C"&ROW(A1)&":R100C"&ROW(A1),FALSE))

要不就:

=COUNTA(INDEX(INDIRECT("EIM!$1:$100"),0,ROW(A1)))

通常,如果您使用的是INDIRECT,則說明您做錯了什么。 我所看到的唯一合理的間接用例是(a)通過公式選擇另一個工作表(在Excel中沒有好的方法),以及(b)編寫一個引用命名單元格的Excel教程示例。

如果您始終引用特定的工作表,則可以使用:

=COUNTA(INDEX(EIM!$1:$100,0,ROW(A1)))

如果每一列代表一個不同的工作表,則間接的是可以接受的。

暫無
暫無

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

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