Finding / calculating reporting level in organization/hierarchy

griffy

New Member
Joined
Oct 24, 2016
Messages
18
So, I have a list exported from a system containing unique employee ids (children). Each of these rows has the employee’s manager unique id (parent). One of the employees is the CEO and is to be considered level = 1

I would like a way to calculate per employee what level they are on in the organization. Is this possible in an effective way?

Have tried a solution I found before based on MATCH and INDEX, but it is cumbersome and seems to consume enormous resources to calculate and recalculated all the time.

Unique child idUnique parent idlevel
188?
299?
344?
455?

<tbody>
</tbody>
 

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
17,975
Office Version
2013
Platform
Windows
You haven't shown us how you arrive at the calculated level for each employee and what criteria is required to do the calculation.
You might be better providing a sample of data with the end result already shown and how you arrived at that result.
 

griffy

New Member
Joined
Oct 24, 2016
Messages
18
the formula i have used and that finally actually give the desired outcome is; =IF(A2=1;1;1+INDEX(C:C;MATCH(B2;A:A;0))) the issue is that its heavy and there are ~45k rows in up to 15 levels.
CEO is set to ID = 1
 

Michael M

Well-known Member
Joined
Oct 27, 2005
Messages
17,975
Office Version
2013
Platform
Windows
Have you tried reducing your INDEX/MATCH ranges.....
You say approx 45000 rows, so change the formula to
Code:
=IF(A2=1;1;INDEX(C1:C50000;MATCH(B2;A1:A50000;0))+1)
 

griffy

New Member
Joined
Oct 24, 2016
Messages
18
I used this instead, that worked =IF(A2=1;1;1+INDEX($C$1:$C$45000;MATCH(B2;$A$1:$A$45000;0)))
i did however get 2k rows that got level zero
could this be don in a query ?
 

Forum statistics

Threads
1,078,353
Messages
5,339,720
Members
399,320
Latest member
sut3k

Some videos you may like

This Week's Hot Topics

Top