Modules/OneDrive/M365OneDrive.psm1
$output = @() $nfi = New-Object System.Globalization.CultureInfo -ArgumentList "en-us",$false $nfi.NumberFormat.PercentDecimalDigits = 2 Get-SPOSite -Template "SPSPERS" -limit ALL -includepersonalsite $True | Select-Object Title, Owner, StorageUsageCurrent, StorageQuota, Status | ForEach-Object { $user = Get-MsolUser -UserPrincipalName $_.Owner -ErrorAction SilentlyContinue $obj = New-Object -TypeName psobject –Prop $properties $obj | Add-Member -MemberType NoteProperty -Name UserPrincipalName -Value $_.Owner $obj | Add-Member -MemberType NoteProperty -Name DisplayName -Value $_.Title $obj | Add-Member -MemberType NoteProperty -Name IsOneDriveEnabled -Value (& { If ($_.Status -eq "Active" ) { $true } Else { $false } }) $obj | Add-Member -MemberType NoteProperty -Name IsLicensed -Value (& { If ($user.IsLicensed ) { $user.IsLicensed } Else { $false } }) $obj | Add-Member -MemberType NoteProperty -Name StorageUsageCurrent -Value (& Convert-Size -From MB -To GB -Value $_.StorageUsageCurrent -Precision 2) $obj | Add-Member -MemberType NoteProperty -Name StorageQuota -Value (& Convert-Size -From MB -To GB -Value $_.StorageQuota -Precision 2) $obj | Add-Member -MemberType NoteProperty -Name PercentageValue -Value ($_.StorageUsageCurrent/$_.StorageQuota) $obj | Add-Member -MemberType NoteProperty -Name PercentageUsed -Value ($_.StorageUsageCurrent/$_.StorageQuota).ToString("P", $nfi) $output += $obj } $output | Sort-Object PercentageValue -Descending | Select-Object UserPrincipalName, DisplayName, IsOneDriveEnabled, IsLicensed, StorageUsageCurrent, StorageQuota, PercentageUsed $output | Sort-Object PercentageValue -Descending | Select-Object UserPrincipalName, DisplayName, IsOneDriveEnabled, IsLicensed, StorageUsageCurrent, StorageQuota, PercentageUsed | Export-CSV $env:OneDriveCommercial\Reports\2020-05-11.csv -NoTypeInformation |