2017-09-27 92 views
0

我正在創建授權矩陣以向我的客戶交付。我的Excel工作簿包含兩個表格:應用程序和權限/角色。如何根據兩個表中的兩列生成矩陣?

我想採取每個表的第一列,並在另一個工作表上動態生成X,Y矩陣,其中我的客戶端可以標記所需的應用程序/角色組合。

到目前爲止,我試過了一個數據透視表,但那些數據不能被編輯。我想遠離宏,因爲這將發放給外部客戶。

最後,我想獲得一個動態生成矩陣如下所示:

Role 1 | Role 2 | Role 3 | Role 4 | ... | Role n | 
App 1 |  |  |  |  |  | 
App 2 |  |  |  |  |  | 
App 3 |  |  |  |  |  | 
App 4 |  |  |  |  |  | 
... |  |  |  |  |  | 
App n |  |  |  |  |  | 

任何想法?

+0

您始終可以從外部工作簿運行宏來創建表格。 – dwirony

+0

你打算如何處理結果?如果您打算使用您的客戶輸入的內容來驅動某些系統配置,那麼將它們指向配置工具本身可能是有意義的,否則您將重新輸入它們永遠做出的更改。 – n8wrl

+0

這個結果對我來說是一個起點,並且是一個持續的文檔形式,用於填充工具和審覈他們自己的工具,與工具分開。 – Griven

回答

0

如果下面的圖像是您要查找的圖像,那麼您可以使用下面的方法,然後將其作爲值發送到客戶端。

Pivot View

您需要手動創建應用程序的唯一列表。

在每個應用程序旁邊會有幾個數組公式來提取關聯的角色。

=IFERROR(INDEX($B$3:$C$14,SMALL(IF(($B$3:$B$14=$C17),ROW($B$3:$C$14)-2),ROW($1:$1)),2),"")

,如果你的數據在一個excel表格,則公式更容易創建和讀取。

=IFERROR(INDEX(Table1,SMALL(IF((Table1[App Name]=$C16),ROW(Table1)-2),ROW($1:$1)),2),"")

這是一個數組公式,所以你需要使用按Ctrl ++輸入提交公式。

該公式可以自動填充,但您將在每個角色下獲得相同的值。您需要將角色2下的ROW($1:$1)更改爲ROW($2:$2),角色3下的ROW($3:$3)更改爲您認爲需要的角色數量。記住要使用Ctrl + Shift + 在每次更改後輸入

然後只需填寫下來,它會填充列表中每個應用程序的所有角色。

將副本另存爲模板,並使用複製並粘貼爲值來刪除所有可怕的公式,然後將其結束到您的客戶端。

相關問題