No.2
- 回答日時:
こんにちは。
こういう書き方は失礼にも聞こえるかもしれませんが、believe_me さんのご質問は、いつも難しいものが多いです。ある意味、自分で検索して作成可能なものは、ご自身で探して作られたほうがよいのではないか、と思うのです。
「スクリーンセーバーの『5分』設定ありき」という状態から、スクリーンセーバー制御というのは、「C」なら当たり前でも、VBA/VBでは、実験的な分野だと思います。私自身、そういうコードは書けると思いますが、それを得々として回答できるほど、私には自信がありません。VBA/VBで、可能だとはいっても、その分野になると、他の技術を借りなくてはどうしようもないと思うのです。
ヒントを出しておきます。
API関数で、スクリーンセーバーを制御する方法を考えればよいと思います。
「EnumDesktopWindows」とかで、検索したら旧VB系のコードが出てくると思いますので、それをVBAに切り替えれば良いと思います。
ぜひ、がんばってみてください。
いつも回答ありがとうございます。
「スクリーンセーバーの『5分』設定」はありきです。
「C」や「VB」は使えない環境です。
プログラム言語らしきものはOfficeソフトの「VBA」だけが使えます。
簡単にはできそうもないことは予想していました。
少し安直に考えていたかも知れません。
「EnumDesktopWindows」は初めて聞きました。
調べてみます。
No.3
- 回答日時:
根本的にはスクリーンセーバーを切ってしまえば良いのでしょうが、
それができない環境ということでしょうか?
操作に影響のなさそうなキー(例えば F16 とか)を SendKeys
してみたら?
アプリケーションレベルでは、実際にキーを押されたものと
SendKeys で送られてきたものとで区別はないですよ。
# Userform などでも KeyDown イベントはちゃんと発生します
また、その時に次回予約を OnTime で入れておけば良いのですが、
キャンセルさせるための仕組みも必要でしょう。
これで上手くいけるかどうかは検証してませんが。
回答ありがとうございます。
「スクリーンセーバーの『5分』設定」はありきです。
当社の管理部門からスクリーンセーバーにはパスワード及び待ち時間5分を設定せよとの通達が出ております。
月に数回管理部門担当者による各PCの設定確認が抜き打ちで行われます。
パスワードは10文字以上、英字大文字・小文字・特殊文字を全て使用、1ヶ月毎に変更、過去5回は異なるパスワードを設定、机などに一切付箋などは禁止になっています。
PCを多用する仕事ですが、書類などを調べると直ぐ5分経ってしまい、また長いパスワードを入れなければならずとても効率が悪いです。
いささかグレーゾーン的な対応ですが、スクリーンセーバーの設定を変更せずにセーバーが働かないようにしたいと考えております。
尚、ホストコンピュータのエミュレーションも5分で自動的に落ちますが、5分毎にEnterキーを送るマクロを作った人間がおり、そのマクロを使用しております。
このマクロは公認されているか不明ですが、弊社のイントラネットに掲載されており、ほとんどの社員が使用しております。
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分に戻せば良いと(勝手に)判断しました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 電源オプション設定しても画面オフ、スリープ状態にならない 1 2022/06/16 23:07
- モニター・ディスプレイ ひとつご教示下さい。 iMacを使っておりますが、パソコンというものは、365日24時間、電源を入れ 3 2023/03/03 12:57
- Windows 10 スクリーンセーバーがタイムアウトにならない設定 1 2023/06/26 08:09
- テレビ SHARP AQUOS 液晶テレビがすぐに画面がスクリーンセーバーになってしまう。 2 2022/07/22 08:22
- Visual Basic(VBA) Excel VBA マクロ ブロック崩しのコードについて。 1 2022/06/22 12:33
- Excel(エクセル) エクセルで 1行目の固定とE列までの固定ができますか? 7 2022/10/21 04:56
- その他(OS) パソコンを離れていたら 画面に壁紙みたいな写真やカレンダーなどが表示されて 2 2023/04/20 05:22
- Visual Basic(VBA) エクセルVBAのコードについて 2 2022/08/10 21:49
- Visual Basic(VBA) VBAで不特定枚数印刷をしたいです。 4 2022/08/02 07:30
- UNIX・Linux 低スペックPCで軽量Linuxを動かしました。軽快に動かすには間隔をあけるとのが有効ですか? 3 2022/07/30 13:13
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
大画面小画面をキーボードで操作
-
パソコンのキーを押すと全てctr...
-
BIOSは表示されるが操作できない
-
「平方メートル」の記号の出し方!
-
BIOSでUSBを無効に設定してしま...
-
「・」の半角を打つにはどうし...
-
変換候補を消したい!!
-
PCが起動できない
-
英字の一括変換(大文字→小文字)
-
バックスペースで文字を消そう...
-
Tabキーが使えない!
-
ウィンドウズのマウス右クリッ...
-
漢字への変換て?
-
macの半角文字変換について
-
ことえりで作ったユーザー辞書...
-
古い「え」とか「い」の出し方
-
セーフモードでのwindowsの起動...
-
macにて右クリックの動作がおか...
-
変換の学習機能について
-
chromeで検索した後、一番上の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAでスクリーンセ...
-
ディスプレイオフのショートカ...
-
mac用Photoshopで塗りつぶしの...
-
東方緋想天の操作について
-
コントロールキーが効かない
-
WORDのショートカットキーでBs...
-
マイクロソフトOfficeソ...
-
マウスを使わずにパソコンを使...
-
「平方メートル」の記号の出し方!
-
「・」の半角を打つにはどうし...
-
エクセルでイコールがでない
-
Excel VBAでスクリーンキーボー...
-
Tabキーが使えない!
-
BIOSは表示されるが操作できない
-
“あ”に濁点をつけたい
-
BIOSでUSBを無効に設定してしま...
-
キーボードを無効化した後、パ...
-
バックスペースで文字を消そう...
-
パソコンを起動すると
-
英字の一括変換(大文字→小文字)
おすすめ情報