2013-05-29 31 views
2

我有一個龐大的數據集,其中包含用戶及其所屬的組(他們可以在多個組中)。我目前有265個用戶和94個組。我想找到顯示此信息的最佳方式。現在我有一個非常大的spreedsheet向我顯示這些信息,但是我只能過濾組(列)以找出哪些用戶在該組中。理想情況下,能夠過濾用戶以查找用戶所屬的所有組也是非常好的。垂直和水平過濾的最佳方法?

這裏是什麼我的表如下演示: enter image description here

換位不會與265個用戶的工作,我寧願沒有兩個電子表格相同的信息。有任何想法嗎? 謝謝。

+0

爲什麼265用戶不會工作?你使用Excel 2003? –

+0

從技術上講,它會起作用,但水平滾動瀏覽256個名稱並不是最好的選擇。另外,我不想使用兩張相同數據的表格。 – Batman

+0

@Batman以轉置方式顯示錶格的最簡單方法是使用「數據透視表」。然而,如果您仍然想轉置此,請嘗試編寫一些VBA,然後我們將幫助使其工作 – 2013-05-29 20:33:20

回答

4

將數據存儲在一個表中,其中包含兩列「用戶名」和「組名」,以及每個用戶所屬的每個組的一條記錄。例如,前幾行可能是:

User Name  Group Name 
User 1   Group 1 
User 1   Group 5 
User 2   Group 5 
User 2   Group 6 

您可以過濾在「用戶名」查看此表特定用戶屬於哪個羣體,或在「組名」看什麼用戶都屬於特定組。

如果要以「矩陣」形式查看錶格,請根據表格創建數據透視表。

作爲一次性鍛鍊你的數據從當前格式轉換爲新的格式,您可以:

  1. 創建一個新的工作表。
  2. 在新的工作表,至F的列A的第一行中輸入下列標題,分別是:細胞數量行號列號單元格值用戶名,和組名稱。單元格A2,=INT((A2-1)/94)+1在單元格B2,=MOD(A2-1,94)+1在小區C2,=INDEX('Your Existing Data'!$E$2:$CT$266,B2,C2)在細胞D2,=INDEX('Your Existing Data'!$A$2:$A$266,B2,1)在細胞E2,並在小區F2 =INDEX('Your Existing Data'!$E$1:$CT$1,1,C2)=ROW()-1
  3. 在新的工作表中輸入以下公式。這假定您的現有數據位於名爲「您的現有數據」的工作表中,並按照評論中引用的圖像中所示進行佈局。
  4. 將公式向下複製到第24911行(265 * 94 + 1)。
  5. 複製公式並將其粘貼到它們的值上。
  6. 使用篩選器刪除單元格值列中沒有X的行。
  7. 刪除列A到D.

如果你願意,你還可以添加公式來新的工作表來查找基於完整的第一個名字,姓氏,並從現有的數據電子郵件名稱。

+0

這樣做需要很長時間。我有264個用戶和94個組。像你所建議的那樣做是不可行的。 – Batman

+0

我不同意。我已經添加了解釋如何對我的答案做到這一點。 –

+0

我不確定您選擇哪種桌子作爲您的公式的基礎,紅色還是藍色? – Batman