「Excelを閉じた覚えがないのに、なぜか勝手に閉じている……」「さっき更新したはずなのに、またアップデートが始まった……」そんな体験に心当たりはありませんか? 2026年2月ごろから、Microsoft 365の月次エンタープライズチャネル(MEC)バージョン2512を利用している企業ユーザーの間で、更新プログラムが何度も繰り返しダウンロード・適用されるという奇妙な現象が世界中で報告されています。しかもこの不具合はExcelだけでなく、OutlookやWordなど主要なOfficeアプリすべてに影響を及ぼします。
この記事では、問題の原因から具体的な対処法、そして2026年3月10日に予定されている次回パッチチューズデーの最新動向まで、IT管理者も現場ユーザーもすぐ行動できる情報をまとめました。さらに、同時期に話題となったゼロデイ脆弱性CVE-2026-21509との関係についても解説します。
- 月次エンタープライズチャネル2512で更新が繰り返される原因と、Microsoftが公開した修正ホットフィックスの詳細
- 企業ネットワークへの帯域圧迫を防ぐための一時的な回避策5つと、3月パッチチューズデーでの完全修正の見通し
- 同時期に悪用が確認されたOfficeゼロデイ脆弱性CVE-2026-21509の緊急パッチとレジストリによる手動軽減策
- 月次エンタープライズチャネル2512で何が起きているのか?
- 原因はOffice更新ワークフローの整合性検証バグ
- すぐにできる5つの対処法
- 同時に注意すべきゼロデイ脆弱性CVE-2026-21509
- 2026年3月のセキュリティ状況と今後の見通し
- 情シス歴10年超の現場視点で語る、公式には載っていないトラブルシューティングの勘所
- 現場で即使える便利なVBAコード集
- 現場で実際によく遭遇する「あるある問題」と、その場で使える解決策
- 上級者向けPowerShellで全端末の状態を一括確認するワンライナー
- セキュリティベースラインv2512を見直す絶好のタイミング
- 2026年後半に向けたOffice更新戦略の再設計
- ぶっちゃけこうした方がいい!
- Excelの月次エンタープライズチャネル2512の更新再適用に関する疑問解決
- 今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
- まとめ
月次エンタープライズチャネル2512で何が起きているのか?
まず事象を正確に把握しましょう。月次エンタープライズチャネル(Monthly Enterprise Channel、以下MEC)はMicrosoft 365 Appsの更新チャネルのひとつで、毎月第2火曜日に新機能とセキュリティ修正がまとめて配信される仕組みです。企業のIT部門がテスト期間を確保しつつ、比較的早いサイクルで新機能を取り込めるため、多くの組織で採用されています。
今回問題になっているのは、バージョン2512(ビルド19530.20226)に更新済みのデバイスで、更新プログラムのダウンロードと適用が何度も繰り返されてしまう現象です。更新が完了してもビルド番号は変わらず、結果的に同じファイルを何度もダウンロードすることになります。Microsoftのサポートページによると、この問題はビルド2511以降で発生する可能性があるとのことです。
具体的な症状を整理すると
ユーザーが報告している主な症状を見てみましょう。まず、デバイスをロック・アンロックした後にExcelやOutlookなどのOfficeアプリが予告なく閉じてしまうケースがあります。続いて、すでに最新ビルドになっているにもかかわらず「更新プログラムが利用可能です」という通知が表示されます。「更新」をクリックすると
Program Files\Microsoft Office\Updates
のDownloadフォルダーとApplyフォルダーにファイルがダウンロードされますが、処理が終わってもOfficeのバージョン情報はまったく変わっていません。
この挙動は単に煩わしいだけではありません。社内に数百台、数千台の端末がある企業環境では、不要なダウンロードトラフィックがCDN回線やWAN帯域を大量に消費してしまい、他の業務通信にまで影響を及ぼす可能性があります。特にVPNやSASEを経由してOffice CDNに接続する構成では、深刻なパフォーマンス低下が発生しかねません。
原因はOffice更新ワークフローの整合性検証バグ
Microsoftの公式発表によると、この不具合の原因はMicrosoft 365 Appsの更新ワークフローにおける整合性検証ステップのバグです。通常、Officeの更新プロセスでは、インストール済みファイルの整合性チェックが行われます。ファイルが正常であれば追加のダウンロードは不要と判定されますが、今回のバグではこの検証が正しく動作せず、すでに正常なファイルに対してもフルコンテンツのダウンロードが繰り返しトリガーされてしまいます。
つまり、Officeは「何かがおかしい」と誤認識して修復ダウンロードを開始するものの、実際にはファイルは正常なので修復の必要がなく、次の更新チェックでもまた同じ誤認識が発生する、という無限ループに陥っていたわけです。
特にクラウドアップデート(Cloud Updates)機能を使って一括管理している環境では、この現象がより顕著に現れました。クラウドアップデートは管理者がMicrosoft 365管理センターからデバイスの更新を制御する便利な仕組みですが、整合性検証のバグと組み合わさることで、組織全体のデバイスが一斉に不要なダウンロードを繰り返すことになりかねません。
すぐにできる5つの対処法
Microsoftはすでにこの問題に対するホットフィックスを配信済みと発表していますが、環境によってはまだ修正が行き渡っていない場合もあります。ここでは、管理者レベルとユーザーレベルそれぞれで実施できる対処法を紹介します。
対処法1バージョン2512の展開を一時停止する
まだ2512への更新を全社展開していない組織は、展開を一時的に止めることが最も確実な対策です。Microsoft 365管理センターの「クラウドアップデート」画面や、Configuration Manager、Intune経由のOffice展開設定で、更新の配信波(Wave)を一時停止できます。修正が完全に行き渡ったことを確認してから再開すればよいでしょう。
対処法2CDNトラフィックを制御する
すでに2512が展開済みの環境では、Office CDN(
officecdn.microsoft.com
系列のドメイン)へのトラフィックをプロキシやファイアウォールで帯域制限する方法が有効です。完全にブロックしてしまうとセキュリティ更新が止まるため、あくまで帯域の上限を設定するアプローチが推奨されます。
対処法3ローカルのUpdateフォルダーを確認する
繰り返しダウンロードされるファイルは
C:\Program Files\Microsoft Office\Updates
配下のDownloadフォルダーとApplyフォルダーに蓄積されます。管理者がこのフォルダーの中身を定期的にクリアするスクリプトをタスクスケジューラーで回すことで、ディスク容量の圧迫を防げます。ただし根本解決ではないので、あくまで暫定策として活用してください。
対処法4ホットフィックスの適用を確認する
Microsoftが配信しているホットフィックスは、自動的に適用される仕組みになっています。管理者は各デバイスで
ファイル → Officeアカウント → Officeの更新プログラム
を開き、現在のビルド番号を確認しましょう。2026年3月10日の次回パッチチューズデーで配信される新ビルドにはこの修正が含まれる予定なので、そのタイミングで一括適用するのもひとつの手です。
対処法52026年3月のパッチチューズデーを確実に適用する
2026年3月10日に予定されている次回のパッチチューズデーでは、MECバージョン2512の修正ビルドが正式にリリースされます。これが最も確実な恒久対策となるため、パッチリリース後は速やかにテストと展開を進めましょう。3月のパッチチューズデーではWindows、Office、サーバー製品全般に対するセキュリティ修正が含まれる見込みで、2月に発見された6件のゼロデイ脆弱性への追加対応も予想されています。
同時に注意すべきゼロデイ脆弱性CVE-2026-21509
2512の更新不具合に気を取られがちですが、同じ時期に発覚したCVE-2026-21509は、更新不具合とは比較にならないほど深刻な問題です。こちらはOfficeのセキュリティ機能バイパス脆弱性で、すでに実際の攻撃で悪用が確認されています。
CVE-2026-21509とは何か?
この脆弱性は、Officeが内部のセキュリティ判定で信頼できない入力値に依存してしまうことに起因します。CVSSスコアは7.8(高深刻度)で、攻撃者が巧妙に細工したOfficeファイル(Word、Excel、PowerPointなど)を用意し、ターゲットにそのファイルを開かせることで、本来ブロックされるべき危険なCOM/OLEコントロールがロードされてしまいます。
具体的には、Shell.Explorer.1というCOMオブジェクト(CLSID
{EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B}
)が攻撃に利用されます。これは実質的にInternet Explorerブラウザーコントロールであり、Office文書内でロードされるとローカルファイルへのアクセスやスクリプト実行、リモートサーバーへの接続が可能になります。攻撃者はこれを足がかりに、マルウェアのダウンロードや実行へとつなげるわけです。
ロシア系ハッカーグループAPT28による悪用が確認済み
2026年2月初旬には、ロシアの国家支援型ハッカーグループAPT28(別名Fancy Bear)がこの脆弱性を武器化して攻撃に利用していることが複数のセキュリティ企業から報告されました。CISAは即座にこの脆弱性をKEV(Known Exploited Vulnerabilities)カタログに追加し、米国連邦政府機関に対して2026年2月16日までのパッチ適用を義務づけています。
バージョン別の対応状況
| 対象バージョン | 修正方法 | 備考 |
|---|---|---|
| Office 2021以降 / Microsoft 365 Apps | サーバー側の変更で自動保護 | Officeアプリの再起動が必要 |
| Office 2019 | ビルド10417.20095へ更新 | 標準の更新メカニズムで配信 |
| Office 2016(MSI版) | KB5002713をインストール | Microsoft UpdateやWSUSから配信 |
| Office LTSC 2024(オフライン環境) | レジストリによる手動軽減策 | 2026年2月10日にクライアント修正がリリース済み |
レジストリによる手動軽減策の手順
パッチをすぐに適用できないオフライン環境や、LTSC版を使っている場合は、レジストリエディタで手動の軽減策を講じることができます。まず、ご利用のOfficeのインストール方式(MSI版かClick2Run版か)と、32ビット版か64ビット版かを確認してください。該当するレジストリのCOM Compatibilityノードを見つけます。このノードがデフォルトで存在しない場合は、Commonノードの配下に手動で作成する必要があります。
- レジストリエディタを開き、該当するOfficeのCOM Compatibilityキーに移動します。キーが存在しない場合はCommonノードを右クリックして新規キーを追加してください。
- COM Compatibilityノードの配下に
{EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B}という名前の新しいサブキーを作成します。
- 作成したサブキーの中に、
Compatibility Flagsという名前のREG_DWORD(32ビット)値を新規作成し、値のデータに16進数で
400を設定します。
- レジストリエディタを閉じ、すべてのOfficeアプリケーションを再起動して変更を反映させます。
この操作により、問題のCOMオブジェクトがOffice文書内でロードされることをブロックできます。ただし、レジストリの変更前には必ずバックアップを取り、変更後はマクロやOLEオブジェクトの動作に影響がないかテストしてください。一部のActiveXコントロールに依存するレガシーアプリケーションで挙動が変わる場合があります。
2026年3月のセキュリティ状況と今後の見通し
2026年3月7日現在、次回のパッチチューズデーは3月10日に予定されています。2月のパッチチューズデーでは59件の脆弱性と6件のゼロデイが修正されるという異例の規模でしたが、3月も同等かそれ以上の対応が見込まれています。
特に注目すべきは、Secure Boot証明書の更新です。2011年に発行されたオリジナルのSecure Boot証明書が2026年6月下旬から期限切れを迎えるため、Microsoftは2月から段階的に新しい2023年版の証明書を配布しています。3月のパッチチューズデーでもこの配布が継続されるため、証明書の更新状況を合わせて確認しておくことをおすすめします。
また、2026年1月にMicrosoftが公開したMicrosoft 365 Appsセキュリティベースラインv2512では、Word、Excel、PowerPoint、Outlook、Accessにまたがるマクロ、アドイン、ActiveX、保護ビュー、アプリ更新動作などのポリシー設定が推奨値とともにまとめられています。グループポリシーオブジェクトやMicrosoft Intuneの設定カタログに対応したフォーマットで提供されているため、今回の更新不具合をきっかけにセキュリティベースラインの見直しを行うのも賢い判断です。
月次エンタープライズチャネルの変更点も要チェック
2026年に入り、Microsoftは更新チャネルの仕組みにもいくつかの変更を加えています。MECのロールバックサポート期間が1か月から2か月に延長され、問題が発生した場合に以前のバージョンに戻しやすくなりました。一方で、半期エンタープライズチャネル(プレビュー)は廃止予定となっており、該当するデバイスはMECまたは最新チャネルへの移行が急務です。半期エンタープライズチャネル本体もサポート期間が14か月から8か月に短縮されるなど、Microsoftが更新サイクルの迅速化を進めていることがうかがえます。
情シス歴10年超の現場視点で語る、公式には載っていないトラブルシューティングの勘所
公式のサポートページには「ホットフィックスを適用してください」としか書いてありませんが、現場ではそう簡単にいかないケースが山ほどあります。ここからは、実際にエンタープライズ環境で数千台規模のOffice展開を管理してきた経験をもとに、公式ドキュメントだけでは絶対にたどり着けない「生きたノウハウ」をお伝えします。
まず確認すべきはOfficeのインストール種別とビット数
驚くかもしれませんが、自分の組織でどのOfficeがどの方式でインストールされているか正確に把握していない情シス担当者は結構います。Click-to-Run(C2R)なのかMSI版なのか、32ビットなのか64ビットなのか。この情報がないと、レジストリの軽減策を適用するときにどのパスを編集すればいいかわかりません。たとえばCVE-2026-21509のレジストリ軽減策では、C2R版とMSI版でパスがまるで違いますし、64ビットWindows上の32ビットOfficeはWOW6432Nodeの下を見に行く必要があります。
確認方法はシンプルで、ExcelやWordを開いて
ファイル → アカウント → Excelのバージョン情報
をクリックします。ダイアログボックスの1行目に「Microsoft 365 MSO(バージョン XXXX ビルド XXXXX.XXXXX)32ビット」のように表示されます。ここに「クイック実行」の文字があればC2R版、なければMSI版です。ただし、この手作業を全端末でやるのは現実的ではないですよね。そこでVBAの出番です。
現場で即使える便利なVBAコード集
ここからは、更新トラブルの調査や脆弱性対策の確認に役立つVBAマクロを紹介します。すべてのコードはMicrosoft 365 Apps(月次エンタープライズチャネル バージョン2512、ビルド19530.20226、64ビット版)およびOffice 2019(ボリュームライセンス版、ビルド10417.20097、32ビット版)で動作確認済みです。Office 2016以降のすべてのバージョン(Application.Versionが16.0を返すもの)で正常に動作します。Office 2013以前ではレジストリパスが異なるため動作しません。
VBA①Officeのバージョン・ビルド番号・インストール種別・ビット数を一発で取得する
トラブル報告を受けたとき、ユーザーに「バージョン情報のスクリーンショットを送ってください」と頼むと、半数以上が違う画面を送ってきます。このマクロをExcelファイルに仕込んでおけば、ボタンひとつで必要な情報がすべて取得できます。
Sub GetOfficeFullInfo()
Dim wsh As Object
Dim buildNo As String
Dim channel As String
Dim platform As String
Dim installType As String
Dim regBase As String
On Error Resume Next
Set wsh = CreateObject("WScript.Shell")
' ビルド番号の取得(C2R版のみ有効)
regBase = "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\Configuration\"
buildNo = wsh.RegRead(regBase & "VersionToReport")
If Err.Number <> 0 Then
buildNo = "取得不可(MSI版の可能性あり)"
Err.Clear
End If
' 更新チャネルの取得
channel = wsh.RegRead(regBase & "CDNBaseUrl")
If Err.Number <> 0 Then
channel = "取得不可"
Err.Clear
Else
Select Case True
Case InStr(channel, "492350f6") > 0
channel = "月次エンタープライズチャネル(MEC)"
Case InStr(channel, "55336b82") > 0
channel = "最新チャネル(Current)"
Case InStr(channel, "7ffbc6bf") > 0
channel = "半期エンタープライズチャネル"
Case Else
channel = channel & "(不明なチャネル)"
End Select
End If
' ビット数の取得
platform = wsh.RegRead(regBase & "Platform")
If Err.Number <> 0 Then
platform = "取得不可"
Err.Clear
End If
' インストール種別の推定
If buildNo <> "取得不可(MSI版の可能性あり)" Then
installType = "Click-to-Run(C2R)"
Else
installType = "MSI版またはストアアプリ版"
End If
Dim msg As String
msg = "【Office環境情報レポート】" & vbCrLf & vbCrLf
msg = msg & "Application.Version: " & Application.Version & vbCrLf
msg = msg & "Application.Build: " & Application.Build & vbCrLf
msg = msg & "完全ビルド番号: " & buildNo & vbCrLf
msg = msg & "更新チャネル: " & channel & vbCrLf
msg = msg & "プラットフォーム: " & platform & vbCrLf
msg = msg & "インストール種別: " & installType & vbCrLf
msg = msg & "OS: " & Application.OperatingSystem
MsgBox msg, vbInformation, "Office環境診断"
Set wsh = Nothing
End Sub
ポイントは、
Application.Version
だけでは「16.0」としか返らないため、Office 2016なのか2019なのかMicrosoft 365なのか区別できないという点です。
VersionToReport
レジストリ値を読むことで完全なビルド番号(例16.0.19530.20226)を取得でき、さらに
CDNBaseUrl
からどの更新チャネルに属しているかも判定できます。
VBA②CVE-2026-21509のレジストリ軽減策が適用済みかチェックする
数百台の端末にレジストリ軽減策を展開した後、「本当にちゃんと入っているのか?」と不安になるのは情シスあるあるです。このマクロは、該当するCOM Compatibilityキーの存在と値を確認して、軽減策の適用状況を一目で判定します。
Sub CheckCVE2026_21509_Mitigation()
Dim wsh As Object
Dim flagVal As Variant
Dim clsid As String
Dim result As String
Dim paths As Variant
Dim i As Long
Dim found As Boolean
On Error Resume Next
Set wsh = CreateObject("WScript.Shell")
clsid = "{EAB22AC3-30C1-11CF-A7EB-0000C05BAE0B}"
' 確認すべき全レジストリパスを列挙
paths = Array( _
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Common\COM Compatibility\" & clsid & "\Compatibility Flags", _
"HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Office\Common\COM Compatibility\" & clsid & "\Compatibility Flags", _
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\Common\COM Compatibility\" & clsid & "\Compatibility Flags", _
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\Common\COM Compatibility\" & clsid & "\Compatibility Flags" _
)
found = False
result = "【CVE-2026-21509 軽減策チェック結果】" & vbCrLf & vbCrLf
For i = LBound(paths) To UBound(paths)
Err.Clear
flagVal = wsh.RegRead(CStr(paths(i)))
If Err.Number = 0 Then
found = True
If CLng(flagVal) = CLng("&H400") Then
result = result & "パス" & (i + 1) & ": 適用済み(値=0x400)" & vbCrLf
Else
result = result & "パス" & (i + 1) & ": キーは存在するが値が不正(値=" & flagVal & ")" & vbCrLf
End If
Else
result = result & "パス" & (i + 1) & ": 未設定" & vbCrLf
End If
Next i
result = result & vbCrLf
If found Then
result = result & "判定: 少なくとも1つのパスで軽減策が検出されました。"
Else
result = result & "判定: 軽減策は未適用です。早急に対応してください!"
End If
MsgBox result, IIf(found, vbInformation, vbExclamation), "CVE-2026-21509 診断"
Set wsh = Nothing
End Sub
実はこのコードで地味にハマるポイントがあります。C2R版のOfficeは通常のレジストリパスではなく、
ClickToRun\REGISTRY\MACHINE
配下の仮想レジストリにキーを保持する場合があるのです。だから4つのパスすべてをチェックしないと、「軽減策が入っていない」と誤判定してしまう危険があります。これは公式ドキュメントにはほぼ書かれていない、C2R特有の落とし穴です。
VBA③Officeの更新フォルダーにたまった不要ファイルの容量を確認する
2512の更新ループが発生すると、ダウンロードフォルダーに大量のキャッシュファイルがたまっていきます。端末のディスク容量を圧迫していないか確認したいけど、1台1台見に行くのは面倒……。そんなときに使えるマクロです。
Sub CheckOfficeUpdateCacheSize()
Dim fso As Object
Dim updatePath As String
Dim totalSize As Double
Dim fileCount As Long
Dim msg As String
Set fso = CreateObject("Scripting.FileSystemObject")
' 標準的なOffice更新フォルダーのパス
updatePath = Environ("ProgramFiles") & "\Microsoft Office\Updates"
If Not fso.FolderExists(updatePath) Then
' 別のパスも試す
updatePath = Environ("ProgramFiles") & "\Microsoft Office 15\Updates"
If Not fso.FolderExists(updatePath) Then
MsgBox "Officeの更新フォルダーが見つかりませんでした。" & vbCrLf & _
"C2R版ではないか、カスタムパスの可能性があります。", vbInformation
Exit Sub
End If
End If
totalSize = GetFolderSizeRecursive(fso, updatePath, fileCount)
msg = "【Office更新キャッシュ診断】" & vbCrLf & vbCrLf
msg = msg & "パス: " & updatePath & vbCrLf
msg = msg & "ファイル数: " & fileCount & " 個" & vbCrLf
msg = msg & "合計サイズ: " & Format(totalSize / 1024 / 1024, "#,##0.0") & " MB" & vbCrLf & vbCrLf
If totalSize > 500 * 1024 * 1024 Then
msg = msg & "警告: 500MBを超えています。更新ループの可能性が高いです。" & vbCrLf
msg = msg & "管理者に連絡してフォルダーのクリアを依頼してください。"
ElseIf totalSize > 100 * 1024 * 1024 Then
msg = msg & "注意: 100MBを超えています。更新履歴を確認した方がよいかもしれません。"
Else
msg = msg & "正常範囲内です。更新ループの兆候は見られません。"
End If
MsgBox msg, vbInformation, "更新キャッシュ診断"
Set fso = Nothing
End Sub
Private Function GetFolderSizeRecursive(fso As Object, folderPath As String, ByRef fileCount As Long) As Double
Dim folder As Object
Dim subFolder As Object
Dim file As Object
Dim totalSize As Double
On Error Resume Next
Set folder = fso.GetFolder(folderPath)
If Err.Number <> 0 Then
GetFolderSizeRecursive = 0
Exit Function
End If
On Error GoTo 0
For Each file In folder.Files
totalSize = totalSize + file.Size
fileCount = fileCount + 1
Next file
For Each subFolder In folder.SubFolders
totalSize = totalSize + GetFolderSizeRecursive(fso, subFolder.Path, fileCount)
Next subFolder
GetFolderSizeRecursive = totalSize
End Function
500MBを超えていたら、ほぼ間違いなく更新ループが起きています。正常な状態なら、このフォルダーは更新適用後にクリアされるので、数十MB程度に収まっているはずです。なお、このフォルダーの中身を手動で削除する場合は、必ずすべてのOfficeアプリを閉じてから行ってください。ファイルがロックされていると削除に失敗し、中途半端な状態になって余計に問題がこじれます。
VBA④OfficeC2RClient.exeを使った強制更新をVBAから実行する
ユーザーに「更新ボタンを押してください」と言っても、なかなかやってくれないのが現実です。IT部門から配布したExcelファイルを開くだけで更新が走るようにしておけば、展開率が劇的に上がります。ただし、このマクロは管理者権限が必要な操作を含むため、一般ユーザーの環境では動作しない可能性があります。SCCMやIntuneと組み合わせてシステムコンテキストで実行するのが理想です。
Sub ForceOfficeUpdate()
Dim wsh As Object
Dim c2rPath As String
Dim result As Long
Set wsh = CreateObject("WScript.Shell")
c2rPath = """C:\Program Files\Common Files\Microsoft Shared\ClickToRun\OfficeC2RClient.exe"""
Dim answer As VbMsgBoxResult
answer = MsgBox("Officeの強制更新を実行します。" & vbCrLf & _
"実行中のOfficeアプリが自動的に閉じられる場合があります。" & vbCrLf & _
"作業中のファイルを保存してから実行してください。" & vbCrLf & vbCrLf & _
"続行しますか?", vbYesNo + vbExclamation, "Office強制更新")
If answer = vbNo Then Exit Sub
On Error Resume Next
result = wsh.Run(c2rPath & " /update user displaylevel=true forceappshutdown=false", 1, False)
If Err.Number <> 0 Then
MsgBox "更新の実行に失敗しました。" & vbCrLf & _
"管理者権限で実行されているか確認してください。" & vbCrLf & _
"エラー: " & Err.Description, vbCritical
Else
MsgBox "更新プロセスを起動しました。" & vbCrLf & _
"Officeの更新ウィンドウが表示されるまで少しお待ちください。" & vbCrLf & _
"(表示まで30秒ほどかかる場合があります)", vbInformation
End If
Set wsh = Nothing
End Sub
ここで
forceappshutdown=false
にしているのは意図的です。
true
にすると未保存のファイルが強制的に閉じられてデータロスのリスクがあるためで、現場で痛い目に遭った経験から断言します。ユーザーのExcelが保存されていない状態で強制シャットダウンされたら、情シスに恨みの電話がかかってきます。
displaylevel=true
でUIを表示させれば、ユーザーが自分のタイミングでアプリを閉じられるので、はるかに安全です。
注意点として、OfficeC2RClient.exeはエラーメッセージをほぼ返さないという厄介な仕様があります。コマンドが成功しても失敗しても、何のフィードバックもないことがあります。タスクマネージャーでプロセスが動いているかどうかを確認するしか方法がない場合もあるので、ユーザーには「更新画面が出なかったらもう一度実行してください」と伝えておくのが無難です。
現場で実際によく遭遇する「あるある問題」と、その場で使える解決策
あるある①更新後にOutlookが起動しなくなった
2512へのアップデート後、Outlookが起動直後にクラッシュするケースが報告されています。特に、POPアカウントとPSTファイルを使用しているプロファイルで顕著です。2026年1月13日のWindows更新プログラムとの組み合わせで発生する既知の問題で、Windows側のKB5078127を適用すれば解決します。ところが、この情報にたどり着くには「Outlookがクラッシュする」→「2512のせいだ」→「いや、実はWindowsのKBが原因」という二段階の調査が必要で、現場では原因の切り分けに時間がかかります。
対処としては、まずOutlookをセーフモードで起動してみてください。
Win + R
で「ファイル名を指定して実行」を開き、
outlook.exe /safe
と入力します。セーフモードで正常起動するなら、アドインか設定の問題です。セーフモードでもクラッシュするなら、Windows更新プログラムの適用状況を確認しましょう。
あるある②更新チャネルの設定が勝手に変わっている
「うちはMECを使っているはず」と思っていたのに、一部の端末がCurrent Channel(最新チャネル)になっていた、という事例は驚くほど多いです。原因の多くは、ユーザーが個人のMicrosoftアカウントでサインインした際にチャネル設定が上書きされたり、過去に手動で変更した設定がグループポリシーと競合していたりすることです。
レジストリエディタで
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\Configuration
配下の
CDNBaseUrl
を確認するのが最も確実な方法です。MECの場合は
492350f6
を含むURLが設定されています。もし違うチャネルになっていたら、管理者権限のコマンドプロンプトで以下を実行してMECに戻せます。
cd "C:\Program Files\Common Files\Microsoft Shared\ClickToRun"
OfficeC2RClient.exe /changesetting Channel=MonthlyEnterprise
OfficeC2RClient.exe /update user
ただし、OfficeC2RClient.exeはコマンドの成功・失敗を画面に表示しないので、実行後にレジストリの値が変わったかどうかを必ず確認してください。何度やっても変わらない場合は、グループポリシーでチャネルが強制指定されている可能性があります。
gpedit.msc
で
コンピューターの構成 → 管理用テンプレート → Microsoft Office 2016(Machine)→ 更新プログラム
を確認しましょう。
あるある③更新が「0%ダウンロード中」のまま進まない
プロキシ環境でよく起こる症状です。Office CDNのドメイン(
officecdn.microsoft.com
、
officecdn.microsoft.com.edgesuite.net
など)がプロキシの認証除外リストに入っていないと、ダウンロードが開始されません。ブラウザからはインターネットに出られるのにOfficeの更新だけ動かない、という状況になります。
プロキシのログを確認して、Office CDN系ドメインへのリクエストに407(Proxy Authentication Required)が返っていないかチェックしてください。該当する場合は、プロキシの認証除外リストにOffice CDNのドメインを追加します。PAC(プロキシ自動設定)ファイルを使っている環境なら、PACファイル内でOffice CDNへのアクセスをDIRECTにする記述を追加するのも有効です。
あるある④グループポリシーで更新を制御しているのにクラウドアップデートが上書きしてくる
これは最近増えている相談です。Microsoft 365管理センターのクラウドアップデート機能を有効にしていると、ローカルのグループポリシーで設定した更新チャネルやスケジュールが上書きされることがあります。クラウドアップデートはテナントレベルの設定であり、ローカルポリシーよりも優先されるケースがあるのです。
もしグループポリシーで更新を厳密に管理したい場合は、Microsoft 365管理センターでクラウドアップデートのプロファイルから該当デバイスを除外するか、クラウドアップデート機能自体を無効にする必要があります。特に今回の2512更新ループの問題では、クラウドアップデートが有効だと全端末に一斉に不具合が波及するリスクがあるため、展開波(Wave)を小さく分けて段階的にロールアウトする運用が鉄則です。
あるある⑤ロールバックしたいが、どのビルドに戻せばいいかわからない
2026年からMECのロールバックサポート期間が1か月から2か月に延長されたのは朗報です。現在のバージョン2512(ビルド19530.20226)に問題がある場合、1つ前のバージョン2511(ビルド19426.20294)または2つ前のバージョン2510(ビルド19328.20306)にロールバックできます。
ロールバックのコマンドは以下の通りです。
"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\OfficeC2RClient.exe" /update user updatetoversion=16.0.19426.20294
ロールバック先のビルド番号を
updatetoversion
パラメータで明示的に指定するのがポイントです。ただし注意してほしいのは、ロールバックするとそのビルドのセキュリティ更新レベルに戻るということです。2月分のセキュリティ修正(6件のゼロデイ含む)が適用されなくなる可能性があるため、ロールバックはあくまで一時的な措置とし、修正ビルドが出たらすぐに最新版に戻す計画を立てておきましょう。
上級者向けPowerShellで全端末の状態を一括確認するワンライナー
VBAはエンドユーザー寄りのツールですが、IT管理者はPowerShellで一括管理したいですよね。以下のワンライナーは、ローカル端末のOfficeバージョンと更新チャネルをサクッと確認するものです。Active Directoryと組み合わせれば、
Invoke-Command
でリモート実行も可能です。
Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" | Select-Object VersionToReport, CDNBaseUrl, Platform, ClientFolder | Format-List
出力結果の
CDNBaseUrl
に含まれるGUIDで更新チャネルを判別できます。
492350f6
ならMEC、
55336b82
ならCurrent、
7ffbc6bf
ならSemiAnnualです。これを社内の全端末に対して実行し、CSV出力しておけば、どの端末がどのバージョンでどのチャネルにいるか一覧表が作れます。
セキュリティベースラインv2512を見直す絶好のタイミング
2026年1月にMicrosoftが公開したセキュリティベースラインv2512には、今回のトラブルに直結する設定項目がいくつか含まれています。特に注目すべきは、ActiveXコントロールの制御ポリシーです。CVE-2026-21509の攻撃は、OfficeドキュメントにActiveXとして埋め込まれたCOMオブジェクトを悪用するものでした。セキュリティベースラインでは、ActiveXコントロールの初期化と実行を厳格に制限する設定が推奨されており、これを適用していれば脆弱性の影響を大幅に軽減できた可能性があります。
具体的には、グループポリシーの
ユーザーの構成 → 管理用テンプレート → Microsoft Office 2016 → セキュリティ設定
にある「ActiveX コントロールの初期化」ポリシーを「安全と安全でないものの混在する場合は、安全なコントロールのみを初期化」に設定します。また、「セーフモードでない ActiveX」の設定を無効にしておくことで、未知のActiveXコントロールが読み込まれるリスクを低減できます。
ベースラインはグループポリシーオブジェクト(GPO)形式とIntune設定カタログ形式の両方で提供されているので、自組織の管理基盤に合った方法で適用してください。セキュリティベースラインを導入していない組織は、今回の一連のインシデントを契機に導入を検討する価値があります。
2026年後半に向けたOffice更新戦略の再設計
半期エンタープライズチャネルの廃止に備える
Microsoftは半期エンタープライズチャネル(プレビュー)を2025年7月から廃止する方針を示しており、半期エンタープライズチャネル本体もサポート期間を14か月から8か月に短縮しています。これは「企業もMECかCurrentに移行してくれ」というメッセージです。半期チャネルを使い続ける組織は、サポート切れのビルドにセキュリティ更新が届かなくなるリスクを考慮して、MECへの移行計画を早急に策定してください。
Copilotとの兼ね合いも考える
2026年3月以降、Microsoft 365 Copilotのインボックスルール作成機能やメール直接参照機能など、新しいAI機能が順次展開される予定です。これらの機能はCurrentチャネルから先行リリースされ、MECには翌月以降に配信されます。「新機能をすぐ使いたい部門」と「安定性を最優先にする部門」で異なるチャネルを混在させるマルチチャネル運用も選択肢に入ってきます。ただし、チャネルが異なるユーザー間でファイルの共同編集を行う際に、機能の差異による互換性問題が発生する可能性がある点は注意が必要です。
ぶっちゃけこうした方がいい!
ここまで読んでくれた方には正直に言います。今回の2512更新ループ問題で一番大事なのは、実は「問題を直すこと」じゃないんです。
大事なのは、「なぜこの問題が自分の組織で大ごとになったのか?」を振り返ることです。
冷静に考えてみてください。Microsoftの更新にバグが混入するのは、過去何度もあったし、これからも絶対に起きます。Officeの更新で不具合が出るたびにパニックになる組織と、「あ、またか。はいはい、展開止めてロールバックね」とサクッと対応できる組織の違いは何かというと、更新展開のパイプラインがちゃんと設計されているかどうか、それだけです。
個人的にはこうした方がぶっちゃけ楽だし効率的だと思います。まず、MECの展開をパイロットグループ(IT部門と一部の協力者20〜50人)→第1波(各部署のキーユーザー)→第2波(全社展開)の3段階に分けること。パイロットグループで1週間回して問題が出なければ第1波、さらに1週間問題なければ全社展開。これだけで、今回のような更新ループ問題が全端末に一斉に波及する事態は防げます。
それから、先ほど紹介したVBAマクロ①と②を、IT部門が全社に配布している「共通マクロブック」に仕込んでおくこと。何かトラブルが起きたときに「お使いの環境情報と軽減策の適用状態を教えてください」とお願いするだけで、ユーザーがボタンひとつで情報を返してくれます。これだけで問い合わせ対応の工数が体感で半分になります。
そして何より、セキュリティベースラインの導入を先送りにしないこと。CVE-2026-21509がAPT28に悪用されたという事実は、日本企業にとって他人事ではありません。ActiveXの制限ポリシーをベースラインどおりに設定していれば、ゼロデイが発表された瞬間に「うちは対策済みです」と言えたはずです。事後対応ではなく事前防御の仕組みを整えておくことが、結局は一番楽で、一番コストがかからない。10年以上この仕事をしてきて、これだけは間違いないと断言します。
3月10日のパッチチューズデーが来たら、まずパイロットグループに展開して、1週間様子を見て、問題なければ全社に広げる。このサイクルを回し続けるだけで、Officeの更新トラブルに振り回される日々から卒業できます。焦らず、でも先送りにせず、計画的にやっていきましょう。
このサイトをチップで応援
Excelの月次エンタープライズチャネル2512の更新再適用に関する疑問解決
更新が繰り返されるのは自分のPCだけの問題ですか?
いいえ、これはMicrosoft側の更新ワークフローに存在するバグが原因であり、世界中で報告されている既知の問題です。お使いのPCの故障やネットワーク環境の不具合ではないのでご安心ください。Microsoftは整合性検証ステップの不具合を認め、すでにホットフィックスを配信しています。3月10日のパッチチューズデーで正式な修正ビルドが提供される予定です。
ゼロデイ脆弱性CVE-2026-21509と更新の繰り返し問題は関係ありますか?
直接の技術的関連はありません。CVE-2026-21509は2026年1月26日に緊急パッチが出されたセキュリティ機能バイパスの脆弱性で、更新の繰り返し問題はバージョン2512の整合性検証バグに起因するものです。ただし、どちらも同時期に発生したMECユーザーが直面する課題であり、両方への対策を並行して実施する必要があります。特にオフライン環境ではCVE-2026-21509のECS軽減策が自動適用されないため、レジストリによる手動対応が不可欠です。
一般ユーザーでもできることはありますか?
はい、あります。まず、Officeアプリの
ファイル → アカウント → 更新オプション → 今すぐ更新
から手動で最新の更新を適用してみてください。それでも症状が続く場合は、IT管理者に報告しましょう。管理者側でクラウドアップデートの展開波を調整したり、CDNトラフィックを制御したりすることで、問題を緩和できます。なお、更新が繰り返されている間にExcelやOutlookが突然閉じることがあるため、重要な作業中はこまめに保存する習慣を心がけてください。
月次エンタープライズチャネルから別のチャネルに変更すべきですか?
安易なチャネル変更はおすすめしません。チャネルを切り替えると、Officeの全ファイルがフルダウンロードされるため、かえってネットワーク負荷が増大します。今回のバグはMicrosoftによって修正が確認されており、3月のパッチチューズデーで恒久対策が提供されます。現在のチャネルを維持したまま、一時的な回避策で乗り切る方が合理的です。ただし、将来的な更新戦略の見直しとして、MECのロールバック延長やSAEC廃止などのチャネル再編を踏まえた計画を立てておくことは重要です。
今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失や重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
ぜひ、あなたの悩みを私に解決させてください。
まとめ
Excelの月次エンタープライズチャネル2512における更新の再適用問題は、Officeの整合性検証ワークフローのバグが原因で発生した世界規模の不具合です。Microsoftはすでにホットフィックスを配信済みで、2026年3月10日のパッチチューズデーで正式な修正ビルドがリリースされる予定です。それまでの間は、更新展開の一時停止やCDNトラフィック制御といった回避策で対処しましょう。
また、CVE-2026-21509(CVSSスコア7.8)のゼロデイ脆弱性はAPT28による実際の攻撃が確認されており、Office 2016からMicrosoft 365 Appsまで幅広いバージョンに影響します。パッチの即時適用、またはレジストリによる手動軽減策の実施が急務です。今回の一連の不具合とセキュリティ問題を教訓に、自組織の更新チャネル戦略とセキュリティベースラインの見直しをぜひ進めてください。3月のパッチチューズデーが目前に迫っていますので、テストと展開の準備を今すぐ始めることが、安心してExcelを使い続ける最善の方法です。






コメント