2016-05-02 131 views
0

我有一個宏將一系列表單中的數據複製到主表中,以便我可以在一個位置分析數據。導入的數據存在於定義明確的列中,以便我可以使用sumproduct公式生成報告。忽略Excel中的空白單元格命名範圍

我已經使用命名範圍爲每列數據賦予名稱,所以我不必在每個sum產品中使用Sheets!A1引用。但是,由於數據將根據導入的內容更改大小,因此我將命名範圍設置爲A2列的整個大小:A1048576。這意味着產品運行需要永久。

有沒有辦法將命名範圍限制爲只有那些有數據的單元?它們將始終是前n行(取決於每次運行導入的數據量)。

或者是否有更好/更簡單的方法來實現此功能?

+2

看到這:https://support.microsoft.com/en-us/kb/830287 –

+0

我不知道這是否可以幫助你,但在Excel中,你可以做「轉到空白「,意思是:按下Ctrl + G,」特殊「,」空白「。也許你可以複製所有內容並在目標表單中執行此操作「轉到空白」,並刪除每個結果(右鍵單擊「刪除」,「向上或向左移位單元格」)。 – Dominique

+0

@ Dominique - OP需要一個動態命名範圍,一個隨着工作表更改而變化 – Davesexcel

回答

0

您可以使用公式代替直接單元格引用使範圍名稱變爲動態。

如果你想的範圍名在A2開始並延伸到數據的A列的最後一行,那麼你可以使用這個公式

如果A列有文本,使用

=Sheet1!$A$2:INDEX(Sheet1!$A:$A,MATCH("zzzzzzz",Sheet1!$A:$A,1)) 

如果A列有編號,使用

=Sheet1!$A$2:INDEX(Sheet1!$A:$A,MATCH(99^99,Sheet1!$A:$A,1)) 

這些公式中的匹配()函數將返回最後一行數據的行數和指數函數將返回T的單元格引用在列A的帽子行。

相關問題