Windows11でインストール済みアプリの一覧をPowerShellコマンドでCSV出力する方法を解説します。管理者権限の有無に応じた2つのパターンと、実行手順から出力結果の確認までを整理して解説します。
この記事では、個人PCでの簡単なアプリ確認から、企業環境での全ユーザー分アプリ管理まで対応できるPowerShellコードを紹介します。出力されたCSVファイルは、PC環境の棚卸しや社内システム管理、新規PCセットアップ時のアプリ確認などに幅広く活用できます。

PowerShellでインストール済みアプリをCSV出力する方法(管理者権限不要)
Windows11でインストール済みアプリ一覧を管理者権限なしでCSV出力したい場合に最適な方法です。以下のPowerShellコマンドをコピーして貼り付けるだけで、現在インストールされている全アプリの詳細情報をCSV形式で簡単に取得できます。
PowerShell 5.1とPowerShell 7の両方に対応しており、OneDrive同期環境でも安全に動作します。出力されたCSVファイルはデスクトップに保存され、Excel等で開いてアプリ管理やPC環境の棚卸しに活用できます。
<# ======================================================================
インストール済みアプリ一覧をCSVに出力(ユーザー用:管理者権限なし)
対象: 現在ログオン中ユーザーの Win32 + UWP/Store アプリ
互換: PowerShell 5.1 / 7 系(BOM付きUTF-8)
特色: OneDrive デスクトップ対応、UWP失敗しても処理継続
====================================================================== #>
# --- 出力先(OneDrive デスクトップ対応) -----------------------------------------
$Desktop = [Environment]::GetFolderPath('Desktop') # OSが認識する実在のデスクトップ
$CsvPath = Join-Path $Desktop 'InstalledApplications.csv'
New-Item -ItemType Directory -Force -Path (Split-Path $CsvPath) -ErrorAction SilentlyContinue | Out-Null
# --- Win32(従来型)アプリ取得:64bit/32bit/HKCU を横断 --------------------------
$regPaths = @(
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*', # 64bit
'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*', # 32bit
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' # 現在ユーザー
)
$RegApps = foreach ($p in $regPaths) {
Get-ItemProperty $p -ErrorAction SilentlyContinue |
Where-Object {
$_.DisplayName -and
(-not $_.SystemComponent -or $_.SystemComponent -eq 0) -and
(-not $_.ReleaseType -or ($_.ReleaseType -notin 'Update','Hotfix')) -and
(-not $_.ParentKeyName)
} |
Select-Object @{
Name='Name'; Expression={$_.DisplayName}
},@{
Name='Version'; Expression={$_.DisplayVersion}
},@{
Name='Publisher'; Expression={$_.Publisher}
},@{
# レジストリの InstallDate は yyyyMMdd 文字列のことが多い → DateTimeへ
Name='InstallDate';Expression={
if ($_.PSObject.Properties.Name -contains 'InstallDate' -and $_.InstallDate -match '^\d{8}$') {
[datetime]::ParseExact($_.InstallDate,'yyyyMMdd',$null)
} else { $null }
}
}
}
# --- UWP/Store(現在ユーザー)取得:環境差が大きいので try/catch で保護 ----------
$UWPApps = @()
try {
if ($PSVersionTable.PSEdition -eq 'Core') {
# PS7系では WinPS モジュールを互換セッション経由で読み込む
Import-Module Appx -UseWindowsPowerShell -ErrorAction Stop
} else {
Import-Module Appx -ErrorAction Stop
}
$UWPraw = Get-AppxPackage # 現在ユーザーのみ
$UWPApps = $UWPraw | Select-Object @{
Name='Name'; Expression={$_.Name} # 例: Microsoft.WindowsNotepad
},@{
Name='Version'; Expression={$_.Version}
},@{
Name='Publisher'; Expression={$_.Publisher}
},@{
# 5.1互換のため ?. を使わずに順次チェック
Name='InstallDate';Expression={
if ($_.PSObject.Properties['InstallDate']) { $_.PSObject.Properties['InstallDate'].Value }
elseif ($_.PSObject.Properties['InstallTime']) { $_.PSObject.Properties['InstallTime'].Value }
elseif ($_.PSObject.Properties['DateModified']) { $_.PSObject.Properties['DateModified'].Value }
else { $null }
}
}
}
catch {
Write-Warning "UWP(Appx)取得をスキップ:$($_.Exception.Message)"
}
# --- 統合 → 重複排除(Name+Version+Publisher をキーに -Unique) → 名前順 -------
$AllApps =
@($RegApps + $UWPApps) |
Select-Object Name, Version, Publisher, InstallDate |
Sort-Object Name, Version, Publisher -Unique |
Sort-Object Name
# --- CSV 出力(PS7→utf8BOM / PS5.1→UTF8:いずれもBOM付き) ---------------------
$enc = if ($PSVersionTable.PSVersion.Major -ge 7) { 'utf8BOM' } else { 'UTF8' }
$AllApps | Export-Csv -Path $CsvPath -NoTypeInformation -Encoding $enc
Write-Host "CSV 出力完了(現在ユーザーのみ):$CsvPath 件数:$($AllApps.Count)"
PowerShellでインストール済みアプリをCSV出力する方法(管理者権限必要)
Windows11で全ユーザー分のインストール済みアプリ一覧を管理者権限でCSV出力する方法です。PowerShellを管理者として実行することで、全ユーザーのアプリとMicrosoft Storeアプリ(UWP)まで幅広く取得できます。
社内PC管理や共用PCでのアプリ棚卸しに最適で、PowerShellコマンドをコピーして貼り付けるだけで詳細なアプリ一覧をCSV形式で出力可能です。管理者権限がない場合でも、全ユーザーのMicrosoft Storeアプリ取得のみスキップして、通常のアプリは正常に出力されます。
<# ======================================================================
インストール済みアプリ一覧をCSVに出力(管理者用:全ユーザー対象)
対象: Win32(HKLM/HKCU) + UWP/Store(-AllUsers)
互換: PowerShell 5.1 / 7 系(BOM付きUTF-8)
特色: OneDrive デスクトップ対応、UWP失敗しても処理継続
====================================================================== #>
# --- 管理者チェック(任意:権限不足の早期気づき用) ----------------------------
function Test-IsAdmin {
$current = [Security.Principal.WindowsIdentity]::GetCurrent()
$principal = New-Object Security.Principal.WindowsPrincipal($current)
return $principal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
}
if (-not (Test-IsAdmin)) {
Write-Warning "管理者権限ではありません。UWP の -AllUsers は失敗します。管理者として実行してください。"
}
# --- 出力先(OneDrive デスクトップ対応) -----------------------------------------
$Desktop = [Environment]::GetFolderPath('Desktop')
$CsvPath = Join-Path $Desktop 'InstalledApplications_AllUsers.csv'
New-Item -ItemType Directory -Force -Path (Split-Path $CsvPath) -ErrorAction SilentlyContinue | Out-Null
# --- Win32(従来型)アプリ取得 --------------------------------------------------
$regPaths = @(
'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*', # 64bit
'HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*',# 32bit
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*' # 現在ユーザー
)
$RegApps = foreach ($p in $regPaths) {
Get-ItemProperty $p -ErrorAction SilentlyContinue |
Where-Object {
$_.DisplayName -and
(-not $_.SystemComponent -or $_.SystemComponent -eq 0) -and
(-not $_.ReleaseType -or ($_.ReleaseType -notin 'Update','Hotfix')) -and
(-not $_.ParentKeyName)
} |
Select-Object @{
Name='Name'; Expression={$_.DisplayName}
},@{
Name='Version'; Expression={$_.DisplayVersion}
},@{
Name='Publisher'; Expression={$_.Publisher}
},@{
Name='InstallDate';Expression={
if ($_.PSObject.Properties.Name -contains 'InstallDate' -and $_.InstallDate -match '^\d{8}$') {
[datetime]::ParseExact($_.InstallDate,'yyyyMMdd',$null)
} else { $null }
}
}
}
# --- UWP/Store(全ユーザー)取得:管理者必須 -------------------------------------
$UWPApps = @()
try {
if ($PSVersionTable.PSEdition -eq 'Core') {
Import-Module Appx -UseWindowsPowerShell -ErrorAction Stop
} else {
Import-Module Appx -ErrorAction Stop
}
$UWPraw = Get-AppxPackage -AllUsers # ★全ユーザー分を取得(管理者必須)
$UWPApps = $UWPraw | Select-Object @{
Name='Name'; Expression={$_.Name}
},@{
Name='Version'; Expression={$_.Version}
},@{
Name='Publisher'; Expression={$_.Publisher}
},@{
Name='InstallDate';Expression={
if ($_.PSObject.Properties['InstallDate']) { $_.PSObject.Properties['InstallDate'].Value }
elseif ($_.PSObject.Properties['InstallTime']) { $_.PSObject.Properties['InstallTime'].Value }
elseif ($_.PSObject.Properties['DateModified']) { $_.PSObject.Properties['DateModified'].Value }
else { $null }
}
}
}
catch {
Write-Warning "全ユーザー UWP(Appx)取得をスキップ:$($_.Exception.Message)"
}
# --- 統合 → 重複排除(Name+Version+Publisher)→ 名前順 --------------------------
$AllApps =
@($RegApps + $UWPApps) |
Select-Object Name, Version, Publisher, InstallDate |
Sort-Object Name, Version, Publisher -Unique |
Sort-Object Name
# --- CSV 出力(PS7→utf8BOM / PS5.1→UTF8:いずれもBOM付き) ---------------------
$enc = if ($PSVersionTable.PSVersion.Major -ge 7) { 'utf8BOM' } else { 'UTF8' }
$AllApps | Export-Csv -Path $CsvPath -NoTypeInformation -Encoding $enc
Write-Host "CSV 出力完了(全ユーザー対象):$CsvPath 件数:$($AllApps.Count)"
PowerShellコマンドの実行手順
Windows11でインストール済みアプリ一覧をCSVに出力するPowerShellコードの実行手順は簡単です。
- PowerShellを起動する(管理者権限が必要な場合は「管理者として実行」)
- 上記のPowerShellコードをコピーしてPowerShell画面に貼り付ける
- セキュリティ警告が表示されたら「強制的に貼り付け」をクリック
実行が完了すると、デスクトップにInstalledApplications.csv
(管理者権限版はInstalledApplications_AllUsers.csv
)が自動作成されます。
まずPowerShellを起動してください。(管理者権限が必要な場合は「PowerShellを管理者として実行」してください。)

紹介しているPowerShellコードの右上にある「コピーボタン」をクリックしてください。

次に、PowerShellの画面に戻り、Ctrl
+V
でコピーしたコードを貼り付けてください。
貼り付けるとPowerShellに警告画面が表示されます。
最後に「強制的に貼り付け」をクリックしてください。

「強制的に貼り付け」をクリックするとコードが実行され、「CSV出力完了」と表示されます。
これで、ログインしているユーザーアカウントのデスクトップにCSVファイルが作成されます。

インストール済みアプリ一覧をCSV出力する方法に関するよくある質問と答え
最後に、Windows11でインストール済みアプリ一覧をCSV出力する方法に関するよくある質問と答えをまとめました。
最後までご覧いただき、ありがとうございました。
記事の内容は独自検証に基づくものであり、MicrosoftやAdobeなど各ベンダーの公式見解ではありません。
環境によって結果が異なる場合がありますので、参考のうえご利用ください。
誤りのご指摘・追記のご要望・記事のご感想は、記事のコメント欄またはこちらのお問い合わせフォームからお寄せください。個人の方向けには、トラブルの切り分けや設定アドバイスも実施します。
※Microsoft、Windows、Adobe、Acrobat、Creative Cloud、Google Chromeほか記載の製品名・サービス名は各社の商標または登録商標です。
公式情報・関連資料
実行環境詳細と検証日
- OS:Windows 11 Home 24H2(64bit)
※本記事の手順は Windows11 Home / Pro / Enterpriseで共通です(ポリシーで制限された環境を除く)。 - ハードウェア:Intel(R) Core(TM) Ultra 7 155H (1.40 GHz) / 32GB RAM
- 最終検証日:2025年9月22日
コメント
コメント一覧 (2件)
コマンド大変助かりました。ありがとうございます。
役立って良かったです!