簡介對多列範圍內的唯一項目有VBA,如何過濾先前結果中的多行?
我試圖增強一個基本的計劃表(見下文)與額外的排序。
第一列的資源。每週有2列,每列20小時。
示例讀數;
- 在第30周阿隆工程項目A.民國31周40小時,他的作品在項目A 20H 20H和項目B.
- 傑夫不WK30工作和WK31 項目C工作40
我的目標
- 生成的項目在周唯一列表
- 能根據項目名稱進行過濾,並只獲取在該項目上工作的資源行。 (無特殊需要過濾掉其他項目在同一行,所以如果我在項目「從」過濾器,我想只看到阿隆和戴夫行)
我有什麼
基本上項1如下保護:
的第二列(項目)是返回在多列範圍內的所有唯一項目由VBA函數(從here截取)產生的陣列式。單元格公式如下所示,其中UniqueItems()
的第二個參數確定是否僅返回唯一項目的數量(TRUE)或所有唯一值的列表(FALSE)。
=TRANSPOSE(UniqueItems($C$4:$H$6,FALSE))
缺什麼我的目標名單
第2項缺失。如果我現在選擇項目的過濾器選項(見截圖)
和項目的過濾器,然後我只得到5行,沒有也行4.
我怎麼會去篩選這適當地?
允許使用VBA代碼或指向我應使用常規公式函數的指針。具有相同結果的完全不同的解決方案也很好。我想過關於數據透視表,但我認爲它不能處理這個範圍內的空白單元格,如果這個資源沒有工作,這是很常見的。
使用的板材可以下載from here
那麼一個簡單的VBA函數可以將列C中的所有項目連接到列B中,並在每個項目之間帶有分隔符,那麼您可以使用「Contains」條件過濾列B呢?那有意義嗎? –
我明白你的意思,並得到拼接工作。但是現在我總是要選擇「列過濾器(列標題中向下的三角形) - >文本過濾器 - >包含」,然後填寫一個標準。如果您知道我的意思,我寧願少點幾下。 – ixje