• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:vbaで「休止状態」にしたい)

vbaで「休止状態」にする方法

このQ&Aのポイント
  • vbaで休止状態にする方法について教えてください。
  • vbaで「シャットダウンのダイアログが出るタイプ」はできるが、スタンバイ機能がvistaにないため、スタンバイする方法がわかりません。
  • vistaでスタンバイ状態にする方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.1

Sub Macro() Shell ("C:\Windows\System32\rundll32.exe powrprof.dll,SetSuspendState") End Sub XPでしたら、これでOKですが、はて Vista では?

xcmcxm
質問者

お礼

ありがとうございます。 早速やってみたところ、スリープモードになってしまいました。 XPのスタンバイ=vistaのスリープなのかもしれません。

その他の回答 (2)

  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.3

#DOUGLAS_ です。たびたび失礼いたします。 ≦(._.)≧  さきほどのは、意味不明な中国語の サイト から無理矢理引っ張ってきましたので、多分 エラー 発生、あるいは動作しないかと存じます。  で、 http://scripting.cocolog-nifty.com/blog/2007/04/post_5183.html を参考にして Sub Macro() CreateObject("Excel.Application").ExecuteExcel4Macro "CALL(""PowrProf.dll"",""SetSuspendState"",""JJJJ"",0,0,0)" End Sub で「スタンバイ」にできました(ただし、XPです)。

xcmcxm
質問者

お礼

できました。 しかし自分で質問して不安に思ったのですが スリープと休止状態の違いがよくわかっていませんでした。 でもスリープでもよくなってきました。 何度もありがとうございます。

  • DOUGLAS_
  • ベストアンサー率74% (397/534)
回答No.2

[回答番号:No.1] の DOUGLAS_ です。 >早速やってみたところ、スリープモードになってしまいました。  手許に、Vista の パソコンがありませんので確認ができず、何の根拠もございませんが、「SetSuspendState」を SetStandbyState SetSuspendState SetHibernateState などに変えてお試しください。

xcmcxm
質問者

お礼

SetStandbyState は「エラーが発生しました」というメッセージがでます。 SetSuspendStateはスリープモード?回復に時間がかかるからスタンバイ? SetHibernateState は「エラーが発生しました」というメッセージがでます。 でした。

関連するQ&A