# Need to find out users manager name

**URL:** <https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770>\
**Category:** PowerShell Help\
**Created:** [November 27, 2017, 10:50am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770 "2017-11-27T10:50:00Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![raghavek](https://avatars.discourse-cdn.com/v4/letter/r/f1d935/32.png) [@raghavek](https://forums.powershell.org/u/raghavek)\
**Post date:** [November 27, 2017, 10:50am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/1 "2017-11-27T10:50:00Z")

</div>

Hi

I have a Csv file in below format.

some-id userid  
1 test1  
2 test2  
3 test3  
4 test4  
5 test5

I want to select “userid” column and i need to find out the manager for each user, and append csv in 3rd column with user’s manager name. How to achieve this task. Please advise

Thanks in advace  
Raghav

---

<div class="post-metadata">

**Author:** ![sam-boutros](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.powershell.org/sam-boutros/32/5_2.png) [@sam-boutros](https://forums.powershell.org/u/sam-boutros)\
**Post date:** [November 27, 2017, 11:04am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/2 "2017-11-27T11:04:50Z")

</div>

what code have you written so far?

---

<div class="post-metadata">

**Author:** ![richard-siddaway](https://avatars.discourse-cdn.com/v4/letter/r/d78d45/32.png) [@richard-siddaway](https://forums.powershell.org/u/richard-siddaway)\
**Post date:** [November 27, 2017, 12:20pm UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/3 "2017-11-27T12:20:25Z")

</div>

This is the basic code you need

```
Import-Csv -Path .\names.csv |
foreach {
   $user = Get-ADUser -Identity $_.userid -Properties Manager
   $_ | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $user.Manager
   $_
}
```

The manager is given as a distinguished name. If you want the managers name then modify the code like this

```
Import-Csv -Path .\names.csv |
foreach {
   $user = Get-ADUser -Identity $_.userid -Properties Manager
   $manager = Get-ADUser -Identity $user.Manager
   
   $_ | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $manager.Name
   $_
}
```

if you want the data written back to a csv file then use Export-Csv

```
Import-Csv -Path .\names.csv |
foreach {
   $user = Get-ADUser -Identity $_.userid -Properties Manager
   $manager = Get-ADUser -Identity $user.Manager
   
   $_ | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $manager.Name
   $_
} | Export-Csv -Path names2.csv -NoTypeInformation
```

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex019/uploads/powershell/original/1X/385e4f9fe133561ad30a814262fe0e0ae6bc3ef0.png) [@system](https://forums.powershell.org/u/system)\
**Post date:** [November 28, 2017, 5:36am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/4 "2017-11-28T05:36:00Z")

</div>

You can try the following command for manager information

Get-ADUser -server server\_ip -Filter { mail -like “\*” -and ObjectClass -eq “user” } `  
-SearchBase “OU=Active Users,DC=eu,DC=ad,DC=some\_company,DC=com” `  
-Properties objectGUID,displayName,office,division,department,employeeNumber,  
employeeID,mobilePhone,officePhone,ipphone,title,givenName,surname,mail,  
@{Label=“Manager”;Expression={(Get-aduser -filter {sAMAccountName -eq $\_.Manager}.sAMAaccountName)}},  
sAMAccountName |  
Export-CSV “EU\_AD\_Properties.csv”

or

(get-aduser (get-aduser $user -Properties manager).manager).samaccountName

---

<div class="post-metadata">

**Author:** ![raghavek](https://avatars.discourse-cdn.com/v4/letter/r/f1d935/32.png) [@raghavek](https://forums.powershell.org/u/raghavek)\
**Post date:** [December 1, 2017, 3:49am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/5 "2017-12-01T03:49:47Z")

</div>

Hi

Apologies for the delayed reply. Thanks a lot the script worked for me.

Thanks  
Raghav

---

<div class="post-metadata">

**Author:** ![raghavek](https://avatars.discourse-cdn.com/v4/letter/r/f1d935/32.png) [@raghavek](https://forums.powershell.org/u/raghavek)\
**Post date:** [December 7, 2017, 7:25am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/6 "2017-12-07T07:25:56Z")

</div>

Hi

I used your script and it worked. When I run this script it is giving errors when the AD user not found in AD. How to capture the deleted users in the same script.

Thanks in advance  
Raghav

---

<div class="post-metadata">

**Author:** ![skalizar](https://avatars.discourse-cdn.com/v4/letter/s/ecc23a/32.png) [@skalizar](https://forums.powershell.org/u/skalizar)\
**Post date:** [December 7, 2017, 8:03am UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/7 "2017-12-07T08:03:04Z")

</div>

Untested, but something like this:

```
Import-Csv -Path .\names.csv |
foreach {
   try {
      $user = Get-ADUser -Identity $_.userid -Properties Manager
      $manager = Get-ADUser -Identity $user.Manager | select -expand Name
   } catch {
      $manager = "Invalid User ID or Manager"
   }

   $_ | Add-Member -MemberType NoteProperty -Name 'Manager' -Value $manager
   $_

} | Export-Csv -Path names2.csv -NoTypeInformation
```

---

<div class="post-metadata">

**Author:** ![dotnVo](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dotnVo](https://forums.powershell.org/u/dotnVo)\
**Post date:** [May 16, 2024, 8:37pm UTC](https://forums.powershell.org/t/need-to-find-out-users-manager-name/9770/8 "2024-05-16T20:37:04Z")

</div>


