You should get non-terminating errors for any computer that couldn’t be contacted. I tend to use -ErrorVariable to capture those:
Invoke-Command -ComputerName $listOfComputers -ScriptBlock { Do-Something } -ErrorAction SilentlyContinue -ErrorVariable myErrors foreach ($errorRecord in $myErrors) { # Handle $errorRecord }