JavaScriptを有効にしてください

PowerShellでモジュールを管理者権限なしでインストールする方法【User Scope対応】

 ·  ☕ 3 分で読めます

PowerShellでモジュールを管理者権限なしでインストールする方法【User Scope対応】

管理者権限がない開発者の壁

社内PCや共有環境で開発作業をする際、PowerShellモジュールのインストールで以下のような制限に直面することがあります。

  • Install-Module を実行すると「管理者権限が必要です」と表示される
  • ImportExcelPSReadLine など、便利なモジュールが使えない
  • セキュリティの都合でローカル管理者アカウントの利用が許可されていない

この記事では、管理者権限がない環境でもPowerShellモジュールをインストールする方法として、-Scope CurrentUser オプションの活用法を紹介します。


PowerShellモジュールのインストール方法とスコープの基礎

PowerShellでは、Install-Module を使用してモジュールをインストールします。
インストール先のスコープ(範囲)は以下の2種類:

スコープ説明管理者権限
AllUsers(既定)システム全体にインストール必要
CurrentUser現在のユーザーのプロファイル配下にインストール*不要- ✅
1
2
# 例:管理者権限なしでImportExcelモジュールをインストール
Install-Module -Name ImportExcel -Scope CurrentUser

Scope CurrentUser を使えばユーザーレベルで導入可能

-Scope CurrentUser を指定すれば、モジュールは以下のディレクトリにインストールされます:

1
$env:USERPROFILE\Documents\WindowsPowerShell\Modules

このディレクトリは管理者権限なしでも書き込み可能なため、Install-Module が成功します。


実践:ImportExcelモジュールをユーザースコープで導入する手順

ここでは、Excelファイルを簡単に読み書きできる人気モジュール ImportExcel を例に、実際の手順を解説します。

PowerShellの実行ポリシー確認

一部環境ではスクリプト実行が制限されています。以下で確認しておきましょう。

1
Get-ExecutionPolicy

結果が Restricted の場合は、ユーザースコープで一時的に変更できます:

1
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

💡 RemoteSigned:ローカルのスクリプトは許可、インターネット由来のスクリプトには署名を要求。


Install-Moduleの実行

次に、モジュールをユーザースコープにインストールします。

1
Install-Module -Name ImportExcel -Scope CurrentUser -Force

-Force を付けることで、既存バージョンの上書きや確認プロンプトをスキップできます。


モジュールのインポート確認

インストール後、モジュールが使えるか確認します:

1
2
Import-Module ImportExcel
Get-Command -Module ImportExcel

代表的なコマンド例:

1
2
3
4
5
# Excelファイルの読み込み
$data = Import-Excel -Path "sample.xlsx"

# データをExcelに書き出す
$data | Export-Excel -Path "output.xlsx" -AutoSize

まとめ:社内PCでもPowerShellは活用できる

  • Install-Module -Scope CurrentUser を使えば、管理者権限がなくてもモジュールを導入可能
  • ImportExcel などの便利ツールを使えば、Excel連携やログ整形も簡単
  • セキュリティ制限がある環境でも、PowerShellの機能を最大限活用できる

🔗 関連リンク

共有

こぴぺたん
著者
こぴぺたん
Copy & Paste Engineer