Let try something a little bit harder, we have a script that can export user from specific OU with values like Name, Email, Manager, and departmentnumber
I can be good nowadays with all the reorganization that is now done prematurely at companies.
Not values might need to change it depends where your company stores things in your ad attribute on the user.
Enjoy!
#Import-Module activedirectory
$SearchOU = "OU=YourUsers,OU=Company,DC=company,DC=domain"
#All extended AD-Attributes
$ADAttributes = @(
"Name",
"EmailAddress",
"Manager",
"departmentnumber",
"employeeNumber"
)
$Users = Get-ADUser -SearchBase $SearchOU -Filter {employeenumber -like "*"} -Properties $ADAttributes
$counter = 0
$dateString = Get-Date -Format "yyddMM-hhmm"
"Name,Email,Costcenter,Approver" | Out-File C:\TEMP\Export-$dateString.txt
Foreach ($User in $Users)
{
$name = ""
$email = ""
$departmentnumber = ""
$manager = ""
$departmentnumber = $user.departmentnumber
[string]$name = $user.Name
[string]$email = $user.EmailAddress
try {
[string]$managerDN = $user.manager
[string]$manager = (Get-ADUser $managerDN).name
}
#Can be good to activate if you get probelem, for example
#some user might not have a manager
#
# Catch
# {
# Write-Output $name
# }
[string]$employeeNumber = $user.employeeNumber
[string]$results = $Name +","+ $email + ","+ $departmentnumber +"," + $manager
[string]$results | Out-File C:\TEMP\export-$dateString.txt -Append
}