I always generated Office 365 Licenses report myself so I can get all the data about the users. I have used this report to reclaim licenses or view how the licenses have been used. If you are interested, see the PowerShell Script below.
This script will connect to Azure AD PowerShell (MSOL Service) and get the licensed users, then generate the report with mixed of AD and MSOL data.
Download the Script HERE.
<#
Script: O365LicenseReport.ps1
Purpose: Generate a CSV file with all the licensed users with their details
How to use it? Save this script and run it in a PowerShell. When asked enter the Office 365
Global Administrator credentials. This script will create a CSV file named
Office365-Licsenses-Report.csvWritten By: Anand Venkatachalapathy
#>Import-Module ActiveDirectory
#Get credentials for the Office 365 Admin account
$msolcred = Get-Credential“Connecting to Office 365…”
#Connect to Office 365 cloud
connect-msolservice -credential $msolcred“Get all currently licensed users from Office 365…”
#Get all Licenses users
$O365Users = Get-MsolUser -All | ? { $_.isLicensed -eq $true }#Header for the CSV file
“Is Active?`tUsername`tName`tDepartment`tTitle`tLocation`tCountry`tAssigned Licenses`tEmployee Id” `
| Out-File -FilePath .\Office365-Licsenses-Report.csv#Process all licensed users
foreach ($user in $O365Users)
{
#Get AD attributes
$ADUser = Get-ADUser -Filter { UserPrincipalName -eq $user.UserPrincipalName } -Properties EmployeeId,l,Enabled#List licenses
$Licenses = $null
foreach( $userlicense in $user.Licenses )
{
$Licenses += $userlicense.AccountSkuId + ” “
}#Active account or not
If ($ADUser.Enabled) { $ActiveAccount = “True” } else { $ActiveAccount = “False” }#Write it to a CSV file
$ActiveAccount + “`t” + $ADUser.SamAccountName + “`t” + $User.DisplayName + “`t” + $user.Department + “`t” + `
$user.title + “`t” + $ADUser.l + “`t” + $user.Country + “`t” + $user.Licenses + “`t ” + $ADUser.employeeId
$ActiveAccount + “`t” + $ADUser.SamAccountName + “`t” + $User.DisplayName + “`t” + $user.Department + “`t” + `
$user.title + “`t” + $ADUser.l + “`t” + $user.Country + “`t” + $Licenses + “`t ” + $ADUser.employeeId `
| Out-File -FilePath .\Office365-Licsenses-Report.csv -Append
}
<#
* * * * * End of Script * * * * *
#>