
No.4ベストアンサー
- 回答日時:
安直な提案ですがスクリーンセーバの無効・有効を切り替え・・ではダメ?
Private Sub Workbook_Open()
'http://www.microsoft.com/japan/technet/scriptcen …
'↑ネタ元です
Const HKEY_CURRENT_USER As Long = &H80000001
Dim strComputer As String
Dim objReg As Object
Dim strKeyPath As String, ValueName As String
Dim strValueOld As String, strValueNew As String
strComputer = "."
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")
strKeyPath = "Control Panel\Desktop"
ValueName = "ScreenSaveActive"
strValueNew = "0"'無効にする。有効は1
objReg.GetStringValue HKEY_CURRENT_USER, strKeyPath, ValueName, strValueOld
Debug.Print strValueOld
objReg.SetStringValue HKEY_CURRENT_USER, strKeyPath, ValueName, strValueNew
Debug.Print strValueNew
End Sub
でBookのBeforeCloseイベントで有効にするとか・・・
OS の環境とユーザーの権限によっては出来ない場合も有るかと思います。
当方 WinXP、Admin権限でテスト。
回答ありがとうございます。
結局のところ、スクリーンセーバーの設定を15分にすることで解決しました。
PCの設定確認は事前に連絡があることが分かり、当日5分に戻せば良いと(勝手に)判断しました。
No.3
- 回答日時:
根本的にはスクリーンセーバーを切ってしまえば良いのでしょうが、
それができない環境ということでしょうか?
操作に影響のなさそうなキー(例えば F16 とか)を SendKeys
してみたら?
アプリケーションレベルでは、実際にキーを押されたものと
SendKeys で送られてきたものとで区別はないですよ。
# Userform などでも KeyDown イベントはちゃんと発生します
また、その時に次回予約を OnTime で入れておけば良いのですが、
キャンセルさせるための仕組みも必要でしょう。
これで上手くいけるかどうかは検証してませんが。
回答ありがとうございます。
「スクリーンセーバーの『5分』設定」はありきです。
当社の管理部門からスクリーンセーバーにはパスワード及び待ち時間5分を設定せよとの通達が出ております。
月に数回管理部門担当者による各PCの設定確認が抜き打ちで行われます。
パスワードは10文字以上、英字大文字・小文字・特殊文字を全て使用、1ヶ月毎に変更、過去5回は異なるパスワードを設定、机などに一切付箋などは禁止になっています。
PCを多用する仕事ですが、書類などを調べると直ぐ5分経ってしまい、また長いパスワードを入れなければならずとても効率が悪いです。
いささかグレーゾーン的な対応ですが、スクリーンセーバーの設定を変更せずにセーバーが働かないようにしたいと考えております。
尚、ホストコンピュータのエミュレーションも5分で自動的に落ちますが、5分毎にEnterキーを送るマクロを作った人間がおり、そのマクロを使用しております。
このマクロは公認されているか不明ですが、弊社のイントラネットに掲載されており、ほとんどの社員が使用しております。
No.2
- 回答日時:
こんにちは。
こういう書き方は失礼にも聞こえるかもしれませんが、believe_me さんのご質問は、いつも難しいものが多いです。ある意味、自分で検索して作成可能なものは、ご自身で探して作られたほうがよいのではないか、と思うのです。
「スクリーンセーバーの『5分』設定ありき」という状態から、スクリーンセーバー制御というのは、「C」なら当たり前でも、VBA/VBでは、実験的な分野だと思います。私自身、そういうコードは書けると思いますが、それを得々として回答できるほど、私には自信がありません。VBA/VBで、可能だとはいっても、その分野になると、他の技術を借りなくてはどうしようもないと思うのです。
ヒントを出しておきます。
API関数で、スクリーンセーバーを制御する方法を考えればよいと思います。
「EnumDesktopWindows」とかで、検索したら旧VB系のコードが出てくると思いますので、それをVBAに切り替えれば良いと思います。
ぜひ、がんばってみてください。
いつも回答ありがとうございます。
「スクリーンセーバーの『5分』設定」はありきです。
「C」や「VB」は使えない環境です。
プログラム言語らしきものはOfficeソフトの「VBA」だけが使えます。
簡単にはできそうもないことは予想していました。
少し安直に考えていたかも知れません。
「EnumDesktopWindows」は初めて聞きました。
調べてみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの複雑なシフト表から...
-
エクセルの関数について
-
【マクロ】実行時エラー '424':...
-
【マクロ】変数に入れるコード...
-
エクセルのリストについて
-
【マクロ】数式を入力したい。...
-
【マクロ】【相談】Excelブック...
-
【マクロ】【配列】3つのシー...
-
【マクロ】元データと同じお客...
-
Office2021のエクセルで米国株...
-
【マクロ】左のブックと右のブ...
-
【画像あり】オートフィルター...
-
他のシートの検索
-
エクセルのVBAで集計をしたい
-
vba テキストボックスとリフト...
-
【関数】3つのセルの中で最新...
-
【マクロ】excelファイルを開く...
-
エクセルシートの見出しの文字...
-
LibreOffice Clalc(またはエク...
-
【マクロ】別ファイルへマクロ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
日本語とUSキーボードでは、エ...
-
大画面小画面をキーボードで操作
-
mac用Photoshopで塗りつぶしの...
-
WORDのショートカットキーでBs...
-
エクセルVBAでスクリーンセ...
-
東方緋想天の操作について
-
Illustrater/MacでWinのようにA...
-
マウスを使わずにワードのメニ...
-
PowerPoint2000のF1キーを無効...
-
ディスプレイオフのショートカ...
-
パソコンのキーを押すと全てctr...
-
エクセルの操作の速い人と遅い...
-
アウトルックのアイコンが消え...
-
「平方メートル」の記号の出し方!
-
“あ”に濁点をつけたい
-
BIOSでUSBを無効に設定してしま...
-
Excel VBAでスクリーンキーボー...
-
「・」の半角を打つにはどうし...
-
MAC:文字の候補より入力を優先...
-
キーボードの操作が出来ないん...
おすすめ情報