Get-ComputerManagement.psm1

function Get-ComputerManagement {
    <#
.SYNOPSIS
    Open Computer Management Console on local or remote computer.
.DESCRIPTION
    Open Computer Management Console on local or remote computer.
.PARAMETER ComputerName
    Name of server to open Computer Management Console on remote computer.
.EXAMPLE
    Get-ComputerManagement
    Open Computer Management Console on local computer.
.EXAMPLE
    Get-ComputerManagement -ComputerName pc1
    Open Computer Management Console on remote computer.
.EXAMPLE
    Get-ComputerManagement -ComputerName pc1,pc2
    Open Computer Management Console on multiple remote computer.
#>

    [cmdletbinding()]
    param (
        [parameter(ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
        [string[]]$ComputerName = $env:COMPUTERNAME
    )
    $ComputerName = $ComputerName.ToUpper()
    foreach ($Computer in $ComputerName) {
        if (Test-Connection -ComputerName $Computer -Count 1 -ea 0) {
            try {
                $WmiObj = Get-WmiObject Win32_OperatingSystem -ComputerName $Computer
            }
            catch {
                Write-Warning "$Computer no wmi access"
            }
            if ($WmiObj) {
                compmgmt.msc /Computer=$Computer
            }
        }
        else {
            Write-Warning "$Computer not reachable"
        }
    }
}