はじめに
Microsoft Office 製品には、Microsoft 365 Apps と、Office 20xx シリーズの2通りが存在します。
Microsoft 365 for Apps は、サブスクリプション型で提供され、更新タイミングの異なる チャネル(月次、半期など)が用意されており、インストール時こそ バージョン指定できますが、既定では、選択したチャネル内の最新版へ更新されます。
Office 20xx シリーズの方は、機能更新は行われず、品質更新や セキュリティ更新 のみが提供されるため M365 Apps ほどの変化はありませんが、インターネットに接続されていれば、更新は行われます。
いずれにしても、インターネットに接続されている限り、上記のルールに従って 更新される仕組みとなっています。
一方で、エンタープライズ企業にとって、この更新によって Office 製品の安定動作に支障をきたすような事象(バグ や 製品の動作仕様の変更)による業務影響(業務停止、結果の相違、利用者からの問い合わせ)などのリスクが伴います。
それに対して、GPO や Intune などを利用することで更新タイミングや更新元を制御することも可能になっているため、意図しない更新とならないように 本記事では バージョンをコントロールする方法を紹介いたします。
本記事は、2024年 秋 に検証を実施して 殆どの画面キャプチャを取り終えていました。
なぜか、そのまま 管理用テンプレートの説明を書かないまま、下書きフォルダに眠っていました。
つい最近、お客様先で まったく同一バージョンで同じ手順の検証を実施する機会があったため、この方法を用いて 今でもこの手順で正常に制御できることを確認していました。せっかくなので、記事を完成させて 公開するにいたりました。
本記事では、GPO を使った方法を解説していますが、
Intune を使った方法は、以下の記事で紹介しています。
[Intune] 正規の場所以外から Office 製品をインストール・更新する
https://qiita.com/carol0226/items/2d140c7eb645e74ca2ae
Microsoft 365 Apps 管理センターの Cloud Update との違い
Microsoft 365 Apps のみを利用している環境では、Microsoft 365 Apps 管理センターの Cloud Update 機能(クラウド更新プログラム)による更新管理も利用可能です。
公開情報:クラウド更新プログラムの概要
https://learn.microsoft.com/ja-jp/microsoft-365-apps/admin-center/cloud-update?wt.mc_id=MVP_407731
更新チャネルの管理や段階展開、ロールバックなどの一般的な運用であれば、Cloud Update を利用する方が簡単です。
一方で、本記事で紹介する方法は、
- Office LTSC を運用している
- 閉域環境やインターネット接続を制限している
- 更新資材を社内で管理したい
- 特定バージョンへの切り戻しを行いたい
- 検証用端末 → 情報システム部 → 全社展開 のような 独自の更新元管理を行いたい
といった要件に対応できることが特徴です。
本記事の内容で実現できること
本記事で紹介する方法は、オフライン環境で 更新を可能にする仕組みを応用したものになりますが、意図したバージョンの資材を ファイルサーバーにダウンロードしておき、クライアント上の Office が更新する際の接続先として構成することができるため、以下のようなコントロールが可能になります。
- 社内のグループごとに 更新のタイミングをずらすことで 影響を分散化させる
- 更新を 切り戻す
本記事の対象となる Office 製品
Office 製品 は、以下の通り、異なる形で提供されています。
以下の表の "★" の組み合わせで検証していますが、"〇" の組み合わせについても同様に適用可能と考えられます。
| 製品とバージョン | MSI _VL |
MSI _MSDN |
MSI _Retail |
C2R _VL |
C2R _MSDN |
C2R _Retail |
C2R _M365 |
|---|---|---|---|---|---|---|---|
| Office 2010 | △ | △ | △ | ||||
| Office 2013 | △ | △ | △ | ||||
| Office 2016 | △ | ○ | ○ | ||||
| Office 2019 | ○ | ○ | ○ | ||||
| Office 2021 | ○ | ○ | |||||
| Office 2024 | ○ | ○ | |||||
| Office LTSC 2021 | ★ | ||||||
| Office LTSC 2024 | ○ | ||||||
| Microsoft 365 Apps | ○ |
※Office 2021 以降の VL版は、名称に LTSC が付与されるようになりました。
(凡例)
展開方式
MSI = 従来の展開方式(Windows Update や WSUS を使って更新)
C2R = Click to Run 方式(Office 独自の更新)
※MSI 形式の場合は、WSUS や KB を使って、更新の制御を行います。
提供形態
VL = ボリュームライセンス(企業向け)
MSDN = 開発者向け
Retail = コンシューマー向け
M365 = サブスクリプション型
提供の有無
★ = 本記事の方法でコントロール可(検証済み)
○ = 本記事の方法でコントロール可(机上チェック)
△ = 本記事の方法は、使用不可
空欄 = 製品の提供なし
本記事で紹介する手法は、2016 以降で C2R で提供されているものが対象となります。
MSI で提供されているものは、Windows Update Services (WSUS) で制御する必要があり、本記事の解説では対象外です。
Support Blog:クイック実行形式 (C2R) と Windows インストーラー形式 (MSI) を見分ける方法
https://officesupportjp.github.io/blog/cl0m8t2dj00393gvs3r7oar2m/
更新について
(Office 2016)
https://learn.microsoft.com/ja-jp/office/2016?wt.mc_id=mvp_407731
(Office 2019)
https://learn.microsoft.com/ja-jp/office/2019/update?wt.mc_id=mvp_407731
(Office 2021)
https://learn.microsoft.com/ja-jp/office/ltsc/2021/update?wt.mc_id=mvp_407731
(Office 2024)
https://learn.microsoft.com/ja-jp/office/ltsc/2024/update?wt.mc_id=mvp_407731
更新履歴
(Office 2016)
https://learn.microsoft.com/ja-jp/officeupdates/office-updates-msi?wt.mc_id=mvp_407731
(Office 2019)
https://learn.microsoft.com/ja-jp/officeupdates/update-history-office-2019?wt.mc_id=mvp_407731
(Office 2021)
https://learn.microsoft.com/ja-jp/officeupdates/update-history-office-2021?wt.mc_id=mvp_407731
(Office 2024)
https://learn.microsoft.com/ja-jp/officeupdates/update-history-office-2024?wt.mc_id=mvp_407731
どのように動作するのか?
前提
本章では、Office がファイルサーバー上の更新資材を参照して、意図したバージョンへ更新できることを検証します。
今回は古いバージョンをインストールした後、より新しいバージョンへ更新するシナリオで確認します。
検証時は、以下の XML を使用し、バージョン 14332.20651 を指定してダウンロードしています。

以下の記事で紹介されている方法(OCT : Office カスタマイズツール)で xml ファイルを作成し、setup.exe /download [xmlファイル名] を実行することで 資材をダウンロードすることができます。
ODT を使って Office LTSC 2024 をインストールする
https://qiita.com/carol0226/items/f66f1313e75a35e7aa8b
更新のための仕込み
以下の GPO で、更新するフォルダを指定(ADや 管理用テンプレート導入手順は、後述してます)

更新用の資材(14332.20685)を、以下のようにダウンロード。
以下のテスト時には、最新ではないバージョンですが、インストール済のものよりは新しいものを用意しました。

ポイント
更新と切り戻しをテストするためには、2種類の資材をダウンロードして、同じフォルダに展開してください。
いざ検証
すると、以下のように 更新に失敗します。これは、想定された動作です。
エラーコード: 30182-27 (2)

上記のエラーの対処策として、以下のように バージョン名が書かれた v64_16.0.xxxxx.xxxxx.cab ファイルをコピーして v64.cab を作ります。

そして、Office の更新を実施すると、更新に成功します。
更新された Office のバージョンを確認してください。意図したバージョンになっていれば OK です。

なぜ v64.cab をコピーするのか?
Microsoft Learn では、v64.cab / v32.cab はローカルの Office インストールメディアを検証するために使用されるファイルであり、ローカルインストールには必要であると説明されています。
一方で、UpdatePath を参照した更新処理において、どのように利用されているかの詳細な動作は公開されていません。
今回の検証では、v64.cab が存在しない状態では エラー 30182-27 (2) が発生し、v64.cab を配置することで更新に成功しました。
そのため、Office クライアントは更新元の判定において v64.cab を何らかの形で利用しているものと考えられます。
なお、同様の挙動については、以下の記事でも紹介されています。
インターネットに接続できない端末に Office LTSC 2021 をインストールする ~ファイルサーバーの利用~
https://qiita.com/makihi/items/724b6465095e90352598
環境作成方法
前提事項
- Active Directory 環境
- PC が ドメイン参加されていること
Active Directory ドメインサービス (ADDS) の導入
https://qiita.com/carol0226/items/b94f93adc309b5dc8ee8
Active Directory サーバーの作業
管理用テンプレートのダウンロードと配置
1.以下のサイトから、Office 管理用テンプレートをダウンロードします。
Office管理用テンプレート
https://www.microsoft.com/en-us/download/details.aspx?id=49030
2.Office のアーキテクチャに合わせて x64 , x86 を選択します。

4.License Terms にチェックを入れて、Continue します。

7.フォルダを開き、以下のように 全 admx ファイルを指定して、コピーします。

8.以下のフォルダを開いて、新しいフォルダを新規作成します。
C:\Windows\SYSVOL\domain\Policies

環境によってパスは異なります。以下の場合もあります。
C:\Windows\SYSVOL\sysvol<ドメイン名>\Policies
Policies フォルダ配下へ作成してください。
9.PolicyDefinitions を作成します(もともとある場合は、開くだけで OK)

10.先ほどコピーした admx ファイルを貼り付けます。続いて さらにフォルダを作ります。

12.ダウンロードした管理用テンプレートに戻り、ja-jp フォルダ配下の adml をすべてコピーします。

13.以下のフォルダに コピーした adml ファイルを貼り付けます。
C:\Windows\SYSVOL\domain\Policies\ja-jp

GPO で、Office の更新資材のパスを指定する
1.サーバーマネージャーのツールから グループポリシーの管理 を開きます。

2.ドメイン名(または ポリシーを適用したいコンピューターが所属する OU)を右クリックして このドメインに GPO を作成し、このコンテナーにリンクする を選択します。

3.任意の名称(Office 更新とわかるものが良い)を付与します。

6.以下のポリシー設定を編集で開きます。
[コンピューターの構成]-[ポリシー]-[管理用テンプレート]-[Microsoft Office 2016(マシン)]-[更新] -[更新プログラムのパス]

7.以下のように 更新資材をダウンロードしたファイルサーバーのパスを設定します。
Office というフォルダが存在する場所(Office の 1つ上の階層)を指定

9.コマンドを開き gpupdate /force を実行します。
ポイント
GPO を 作成・更新 した後は、gpupdate を AD サーバー側とクライアント側の両方で更新した方が、すぐに反映されます。
クライアント PC 側の操作
1.gpupdate /force で、AD 側で更新されたポリシーを適用します。
続いて gpresult /h result.html でポリシー結果セットを取得します。

2.以下のように ダウンロードした ポリシー結果セットがあるので、ブラウザで開きます。

3.以下のように AD 側で設定した値が クライアント側で確認できれば OK です。

以上で、環境構築は完了です。
どのように動作するのか の章で説明している通りの動作を確認することができます。
実運用での活用例
本記事では v64.cab を切り替える方法を紹介しましたが、
実運用では OU ごとに異なる更新元を指定する方法も有効です。
OU ごとに異なる更新資材のパスを GPO で適用することでも、段階展開を実現できます。
例えば、
- 検証端末 OU → \\Server\OfficePilot
- 情報システム部 OU → \\Server\OfficeIT
- 全社端末 OU → \\Server\OfficeProd
のように異なる更新元を指定することで、
更新の影響を確認しながら段階的に展開できます。
また、問題が発生した場合は、
対象 OU の更新元を元のバージョンへ切り戻すことで影響範囲を限定できます。
まとめ
Office の Click-to-Run(C2R)版は、既定では Microsoft の更新サービスを利用して最新バージョンへ更新されますが、GPO の 更新プログラムのパス を利用することで、更新元をファイルサーバーへ変更することができます。
本記事では、
- Office 管理用テンプレートの導入
- GPO による更新元の指定
- Office Deployment Tool による更新資材の取得
- v64.cab を利用した更新バージョンの制御
を行うことで、Office の更新を任意のタイミングで実施できることを確認しました。
また、複数バージョンの更新資材を保持しておくことで、
- 段階的なアップデート展開
- 問題発生時の切り戻し
- インターネット接続が制限された環境での運用
といったシナリオにも対応できます。
特に企業環境では、更新による業務影響を最小限に抑えるために、まずは検証端末や情報システム部門へ展開し、問題がないことを確認してから全社展開する運用が有効です。
Office LTSC や Microsoft 365 Apps を運用している環境において、更新タイミングや更新バージョンを柔軟にコントロールしたい場合の参考になれば幸いです。
参考
公開情報:Office の管理用テンプレートを使用してグループ ポリシー (GPO) で Office 365 ProPlus を制御する
https://learn.microsoft.com/ja-jp/answers/questions/4370544/office-(gpo)-office-365-proplus
参考文献








