2012-09-24 24 views
0

我試圖從表中對數據進行分組返回列標題。該表由數據透視表構建而成,如果員工曾參與過項目,則返回值等於1。如何從表而不是過濾

我試過Hlookup,vlookup ...無法弄清楚。

表中的「1」值表示該人員在該特定項目上工作。 我需要一個公式來說,如果L.Bish =「1」,然後返回也等於「1」的所有名稱

長長的方法是過濾每個人下的值爲「1」無論其他團隊成員是否與該人合作過。

然後,我需要將此公式應用於所有其他團隊成員,以查看誰在項目中一直工作和沒有一起工作。

任何幫助或方向將是巨大的

正如你所看到的,BISH跟以下工作: 卡爾 好 等等

下表是:

Table

+1

答案是怎麼回事被取消注意你的數據是如何組織的。我建議張貼截圖或數據樣本 - 因爲這似乎是一個非常基本的問題,我相信這裏有人可以幫助你。 – Stepan1010

回答

2

我假設你有行和列的員工和項目,反之亦然。如果您要「清理」桌面,則可以將其放回到關鍵位置,並按照您的需要進行分組。我的Table2DB插件here

在你的情況,你可以簡單地運行下面的宏,並創建一個支點根據你的新工作表

Sub UnPivot() 
Dim lLastCol As Long, lLastRow As Long 
Dim rgCell As Range, shtOrg As Worksheet, shtDest As Worksheet 
Dim lRowDest As Long 

'turn off updates to speed up code execution 
With Application 
    .ScreenUpdating = False 
    .EnableEvents = False 
    .Calculation = xlCalculationManual 
End With 

Set shtOrg = ActiveSheet 

lLastRow = Cells(Rows.Count, 1).End(xlUp).Row 
lLastCol = Cells(48, Columns.Count).End(xlToLeft).Column 

Set shtDest = Sheets.Add 
lRowDest = 2 

shtDest.Cells(1, 1) = "Project" 
shtDest.Cells(1, 2) = "Employee" 

With shtOrg 
    For Each rgCell In .Range(.Cells(49, 2), .Cells(lLastRow, lLastCol)).SpecialCells(xlCellTypeConstants) 

     If rgCell.Value = 1 Then 
      shtDest.Cells(lRowDest, 1) = .Cells(rgCell.Row, 1) 
      shtDest.Cells(lRowDest, 2) = .Cells(48, rgCell.Column) 
      lRowDest = lRowDest + 1 
     End If 

    Next rgCell 
End With 

With Application 
    .ScreenUpdating = True 
    .EnableEvents = True 
    .Calculation = xlCalculationAutomatic 
End With 

End Sub 

爲了得到如下圖所示誰沒有一起工作,建一個表的那些和使用式: = IF(COUNTIFS(OFFSET($ A $ 49:$ A $ 78,0,MATCH($ A2,$ 48:$ 48,0)-1 ,,),1,OFFSET($ A $ 49:$ A $ 78,0 ,MATCH(B $ 1,$ 48:$ 48,0)-1 ,,),1)> 0, 「難道」, 「沒有」)& 「同心協力」

enter image description here

+0

按照項目對人員進行分組效果很好。現在,我的下一步就是跨項目對人員進行分組。基本上,誰沒有和誰一起工作。這可能太困難了,我可能不得不手動。 – RCoy1978

+0

用員工作爲行和列構建新表,然後使用標識確定他們是否共享項目。我會在範圍A80和假設你的數據在線路78站,我得到這個公式單元格B81:= IF(COUNTIFS(OFFSET($ A $ 49:$ A $ 78,0,MATCH(A81,$ 48:$ 48 0)-1 ,,),1,OFFSET($ A $ 49:$ A $ 78,0,MATCH(B $ 80 $ 48:$ 48,0)-1 ,,),1)> 0, 「沒有符合」,「沒't「)&」一起工作「 – nutsch

+0

對於我上面的表格,這沒有任何意義。就我所知,您不能在行和列中使用相同的字段構建數據透視表。 – RCoy1978

相關問題