Код на шаге 3 будет создавать не хеш-таблицу, а массив хеш-таблиц.Кроме того, он не будет знать, какой размер почтового ящика принадлежит тому или иному пользователю, потому что эта информация теряется после шага 2.
Что-то подобное должно делать то, что вы хотите:
$test = @{} # create new empty hashtable
foreach ($user in $alias) {
$size = Get-MailboxStatistics -Identity $user |
Select-Object @{n='TotalItemSize (MB)';e={...}} |
Select-Object -Expand 'TotalItemSize (MB)'
$test[$user] = ($size * 100) / $maxquota
}