一定時間非アクティブになった後に特定のシートにリンクするコードを作成しようとしています。非アクティブとは、シートを切り替えることではありません。シート 1 に切り替えたい (シート 1 はプレゼンテーションにリンクされており、スクリーンセーバーのように動作します)
これがThisWorkbookの私のコードです
Private nTime As Date
Const proc As String = "SelectIndex"
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Source As Range)
Call SetTimer
End Sub
Private Sub SetTimer()
If nTime <> 0 Then
Call Application.OnTime(EarliestTime:=nTime, Procedure:=proc, Schedule:=False)
End If
nTime = Now + TimeValue("00:00:05")
Application.OnTime nTime, Procedure:=proc
End Sub
これは、誰かがデータを長時間入力しないとシートに移動するときにデータを入力するために機能しますが、データを入力するためのアクセス権がないために誰かがシートを切り替えていない場合は、シートを表示するだけです。
また、プレゼンテーションをキャンセルしてもう一度試すと、エラーが発生するのは一度だけです。
「実行時エラー '1004' オブジェクト '_Application' のメソッド 'OnTime' が失敗しました」
この 2 つの問題だけを克服する必要があります。誰かが J を助けてくれると本当にありがたいです
参考までに、手順SelectIndex
はシート 1 に切り替える単なるマクロです。