2016-06-08 47 views
2

我有一系列數據集(稍後將用於填充組合框),並且我嘗試設置動態範圍以僅列出具有有用數據的單元格。總共有160行數據,但是將要填充的行數會大不相同。再次使用文本字符串的動態範圍

在情況下,它具有在其上的軸承(如果動態範圍檢測""爲不是空白的,例如),用於填充細胞的範圍內的公式是

{=IF(ROW()-ROW(StartPort_NoBlanks)+1>ROWS(StartPort_Blanks)-COUNTBLANK(StartPort_Blanks),"",INDIRECT(ADDRESS(SMALL((IF(StartPort_Blanks<>"",ROW(StartPort_Blanks),ROW()+ROWS(StartPort_Blanks))),ROW()-ROW(StartPort_NoBlanks)+1),COLUMN(StartPort_Blanks),4)))} 

(基於@ DennisWilliamson的在https://superuser.com/questions/189737/dynamically-updating-list-of-unique-column-entries-in-excel答案)

到目前爲止,我都試過

='Saves_FilterLookups'!$C$3:INDEX('Saves_FilterLookups'!$C$3:$C$162, COUNTA('Saves_FilterLookups'!$C$3:$C$162)) 

=OFFSET('Saves_FilterLookups'!$C$3,0,0,COUNTA('Saves_FilterLookups'!$C:$C),1) 

...但都給了我整個列表,包括「空白」單元格。

大多數範圍包含文本字符串;其他範圍之一包含日期。

我錯過了什麼?我如何解決它?

編輯:給一點上下文,這裏有一點名單。完整列表包含沿其長度分散的條目,將重複項刪除到第二列中,並將它們合併到第三列中的一個塊中。他們然後填充到在用戶窗體組合框,但是所有的空格在太來了...

Source to combobox

+1

我相信如果您給出一個示例性的輸入和輸出,它將會很有用。曲解描述性目標很容易。 – zaptask

+0

完成...我想。希望它能澄清一點。 –

+0

不是空格,否;所有的空白單元格都帶有公式的空格,但是那裏沒有空格。我會試試LEN檢查並回復你。 –

回答

1

這是給你一個潛在的解決方案......需要注意的是上面的列表中的單元格需要是空白的

=IFERROR(INDEX($A$2:$A$13,MATCH(0,INDEX(COUNTIF($B$1:B1,$A$2:$A$13),0,0),0)),"") 

這將生成列表全部在一個步驟排序和空白刪除。

我相信你的COUNTA是你的罪魁禍首。 COUNTA會計算所有細胞中的某些物質......而不幸的是「」是一些東西。所以你需要消除「」的數量。所以我加了一個-COUNTIF,並且假設你之前計算的範圍相同。如果工作表名稱全部在同一工作表上完成,則不需要該工作表名稱。

=OFFSET('Saves_FilterLookups'!$C$3,0,0,COUNTA('Saves_FilterLookups'!$C$3:$C$162)-COUNTIF('Saves_FilterLookups'!$C$3:$C$162,""),1) 
+0

是的,工作表名稱是範圍定義。我會嘗試你的建議並回復你。 –

+0

根據您的建議工作,我將'$ C:$ C'更改爲有限的範圍並針對重疊進行了調整。 '= OFFSET(Saves_FilterLookups!$ C $ 3,0,0,COUNTA(Saves_FilterLookups!$ C $ 3:$ C $ 162,1)-COUNTIF(Saves_FilterLookups!$ C $ 3:$ C $ 162,「」) - 1)'很好地工作。如果你想將其編輯成你的答案,我會打勾。謝謝! –

+0

我編輯了公式並同時發現了它的錯誤。你的COUNTA(C3:C162,1)有一個1,真的不應該在那裏。它可能會拋出計數器。最後的-1也許不應該在那裏結果......並且可能你打算輸入,而不是確定。嘗試編輯的公式,看看它是否工作。 –