You could try something like this
$NumberOfDays = 7
$now = Get-Date
$vmOff = Get-Vm | where{$_.PowerState -eq 'PoweredOff'} | Select -ExpandProperty Name
Get-VIEvent -MaxSamples ([int]::MaxValue) |
where{$_ -is [VMware.Vim.VmPoweredOffEvent] -and $vmOff -contains $_.Vm.Name} |
Group-Object -Property {$_.Vm.Name} |
select Name,
@{N='Daysoff';E={[int]($now - ($_.Group | Sort-Object -Property CreatedTime -Descending | Select -First 1 -ExpandProperty CreatedTime)).TotalDays}} |
where{$_.Daysoff -ge $NumberOfDays}