/ / VBA GetObject winmgmtsがWindowsのアップデート後に動作しない - excel、vba、excel-vba、wmi

Windowsのアップデート後にVBA GetObject winmgmtsが動作しない - excel、vba、excel-vba、wmi

私はExcel VBAを使用して、デスクトップログオン、イベントログからのログオフ時間を取得しています。このプログラムは先週Windowsが更新されるまでうまくいった。

デバッグ後、私は GetObject 機能しませんでした。

Sub get_log_time()
On Error GoTo ErrorHandler

"strComputer = ComputerName
strComputer = "."

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\" & strComputer & "rootcimv2")
Set colLoggedEvents = objWMIService.ExecQuery("Select * from Win32_NTLogEvent Where Logfile = "System" and  (EventCode = "7001" or  EventCode = "7002")")

ErrorHandler:
If Err.Number <> 0 Then
Msg = "Error # " & Str(Err.Number) & " was generated by " _
& Err.Source & Chr(13) & "Error Line: " & Erl & Chr(13) & Err.Description
MsgBox Msg, , "Error", Err.HelpFile, Err.HelpContext
End If
Resume Next
End Sub

エラーメッセージ: "エラー#-2147221020がVBAProjectによって生成されました。エラー行:0.自動化エラー、無効な構文です"。

なぜこれが起こり、どうやって解決するのか分からなかった。

追加情報:

  • 私はWindows 10、Excel 2016 MSO(16.0.4549.1000)32ビットを使用しています

  • 私はレイトバインディングにコードを変更しましたが、それでも動作しません。

  • 参照設定:Microsoft Excel 16.0オブジェクトライブラリ、Microsoft Office 16.0オブジェクトライブラリ

回答:

回答№1の場合は3

ここではMS Access 2016 32ビットのみで同じ問題が発生します。 単語でもテストされています。 すべてのオフィスアプリケーションに影響を与えると思われる。 私はWindows 32ビットをWindows 10 64ビットで実行しています。

私は誰かがここで何が起こったのかを知ることができれば幸いです このコードはうまく動作していました。

編集:犯人は、KB4011051、アンインストール後にエラーが表示されなくなると更新されるようです。私はそれが設計上のものかバグかを知ることができるかどうかを調べるために調べています。