Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2016)
Excel 2016 実行時エラー'-2147221020(800401e4) オートメーションエラーです。構文が無効です。
投稿日時: 17/08/04 22:44:12
投稿者: 会社人

毎朝勤怠管理表にPCの起動時間とシャットダウン時間を
ExcelのVBAで自動入力しています。
昨日Win7 64bit のUpDateがありアップデートしました。
その後、勤怠管理表を開くと、件名のエラーが表示され
マクロが止まってしまいます。
止まる構文は下記です。
  Dim sComputer AS String
 Dim sValue AS String
 Dim oService AS Object
 sComputer = "."
  sValue = "winmgmts:{impersonationLevel=impersonate,(Security)}!\\" & sComputer & "\root\cimv2"
     
  Set oService = GetObject(sValue)
どなたか、解決方法ご存じありませんか
ちなみに、アップデート前は動きました。

投稿日時: 17/08/04 23:01:01
投稿者: 会社人

Win10 64bit Excel2016では動きました。

回答
投稿日時: 17/08/06 09:48:12
投稿者: WinArrow
投稿者のウェブサイトに移動

Excelのバー―ジョンの違いではなく、
OSの違いではないでしょうか?
 
 
両方をステップ実行して
>sValue
がどのような値?になっているか比べみてはいかがでしょう?

投稿日時: 17/08/07 07:35:12
投稿者: 会社人

WinArrowさんありがとうございます。
 
家のPCと会社のPCで違いを確認しましたが
 
sValueの値は下記で両方同じでした。
 
Win10 Excel2016
winmgmts:{impersonationLevel=impersonate,(Security)}!\\.\root\cimv2
 
Win7 Excel2016
winmgmts:{impersonationLevel=impersonate,(Security)}!\\.\root\cimv2
 
同じ構文でVBSなら動くのでとりあえずそちらで勤怠表を入力します。
 
ありがとうございました。
 
因みに、会社はADですが関係ありますか?

回答
投稿日時: 17/08/07 08:24:47
投稿者: mattuwan44

ども。
ステップ実行でも、同じエラーになりますか?

投稿日時: 17/08/07 08:32:52
投稿者: 会社人

ステップ実行でも同じエラーになります。

投稿日時: 17/08/08 07:46:58
投稿者: 会社人

ありがとうございました。
 
理由は不明ですが、vbaからvbsを起動・テキスト出力後
テキストから起動及びシャットダウン時間を取ることにしました。