Zeitabfrage in der keine Mausbewegung oder Eingabe

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Zeitabfrage in der keine Mausbewegung oder Eingabe von: Holger Wächter
Geschrieben am: 25.02.2005 17:59:32

Hallo,

1. würde gerne eine Abfrage die im Hintergrund bei Excel läuft, in VBA (oder anders) programmieren, die z.B. eine Meldung ausgibt, wenn nach 5 Minuten immer noch keine Mausbewegung oder Tasteneingabe erfolgt ist.
2. Weiterhin soll im Hintergrund z.B. alle 3 Minuten eine Zelle abgefragt werden ob dort eine bestimmte Zahl steht.

Bedanke mich schonmal im vorraus

MfG

Holger Wächter

Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Josef Ehrensberger
Geschrieben am: 25.02.2005 18:52:43

Hallo Holger!

Vom Prinzip her funktioniert das z.B. so.


      
'Klassenmodul "DieseArbeitsmappe"
Option Explicit

Private Sub Workbook_Activate()
blnAction = 
False
CheckEvents
CheckNumber
End Sub

Private Sub Workbook_Deactivate()
StopOnTime
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
blnAction = 
True
End Sub

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
blnAction = 
True
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As ObjectByVal Target As Range)
blnAction = 
True
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As ObjectByVal Target As Range)
blnAction = 
True
End Sub

'Allgemeines Modul
Option Explicit
Option Private Module

Public blnAction As Boolean
Dim dNextTime As Date
Dim dNextTime_2 As Date


Sub CheckEvents()
If blnAction Then
MsgBox 
"Aktivitäten!"
blnAction = 
False
End If
dNextTime = Now + TimeSerial(0, 5, 0)
Application.OnTime dNextTime, 
"CheckEvents", , True
End Sub

Sub CheckNumber()
If Sheets("Tabelle1").Range("A1") = 5 Then
MsgBox 
"A1 = 5"
End If
dNextTime_2 = Now + TimeSerial(0, 3, 0)
Application.OnTime dNextTime_2, 
"CheckNumber", , True
End Sub

Sub StopOnTime()
Application.OnTime dNextTime, 
"CheckEvents", , False
Application.OnTime dNextTime_2, 
"CheckNumber", , False
End Sub 


     Code eingefügt mit Syntaxhighlighter 3.0



Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Holger Wächter
Geschrieben am: 25.02.2005 19:12:32

Vielen vielen Dank.

Genau sowas habe ich gesucht. Funktioniert sehr gut. Damit kann ich was anfangen. Super.
Ich glaube Mausbewegung oder einen Mausklick kann man nicht abfragen. Habe das unter "Dieser Arbeitsmappe" nicht gefunden. Oder gibt es das auch?

MfG

Holger Wächter


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Josef Ehrensberger
Geschrieben am: 25.02.2005 20:53:21

Hallo Holger!

Mausbewegung geht, wenn dann nur mit aufwändiger API Programmierung.

Rechts- und Doppelklick könnte man noch einbauen.


Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Holger Wächter
Geschrieben am: 25.02.2005 22:40:23

Hallo,

also ich denke mit der API Programmierung geht es mir dann doch zu weit. Da müsste ich mich erst mal mit beschäftigen, oder gibt es da sowas vorgefertigtes, welches ich einfach einbinden kann?

Noch eine abschliessende Frage. Geht es auch das eine Zelle dauernd nach einem bestimmten Wert überprüft wird.
Mein Ziel ist es wenn durch einen Nutzer in einer Access - Datenbank ein Wert sich ändert in einer bestimmten Datenzelle, das Excel dauernd die Zelle abprüft ob sich da was tut und ein anderer Nutzer eine Nachricht bekommt.
Will nur nicht das der Nutzer von Excel dauernd unterbrochen wird durch die Abfragen im Hintergrund.
Vielleicht ist es ja sogar das gleiche Schema wie Sie es mir schon geschickt haben nur ohne time. Er muss dauernd quasi eine Zelle in Access beobachten.

MfG

Holger Wächter


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Josef Ehrensberger
Geschrieben am: 25.02.2005 22:47:07

Hallo Holger!

Änderung einer Zelle in Excel oder in Access?
Wird die Zelle durch händische eingabe geändert, dorch eine Formel oder Makro?


Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Holger Wächter
Geschrieben am: 26.02.2005 13:00:22

Einen schönen guten Morgen,

Die Zelle in Access wird mit einem Makro aus Excel gefüllt. Ein anderer Nutzer, der das gleiche Excelprogramm benutzt, soll dann sofort eine Nachricht kriegen, das ein anderer Nutzer dort was geändert hat.
Also müsste die Zelle in Access dauernd auf Änderungen hin geprüft werden.
Wie ich zu Access connecte und soweiter weis ich. Müsste nur diese dauernde Abfrage aus Excel heraus irgendwie hinkriegen.
Dachte mir vielleicht mit dem ontimer das dort alle 5 Minuten eine Verbindung aufgebaut wird, aber geht das auch dauerhaft.

MfG

Holger Wächter


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Josef Ehrensberger
Geschrieben am: 26.02.2005 14:47:16

Hallo Holger!

Warum nutzt du dann nicht einfach das Makro, das die Änderung in Access
durchführt auch dazu, die Meldung auszusenden?


Gruß Sepp

P.S.: Rückmeldung nicht vergessen!


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Holger Wächter
Geschrieben am: 26.02.2005 17:39:50

Hallo,

weis leider nicht wie das geht. Ich weis zwar wie ich mit Excel zu Access connecte, aber ich weis nicht wie ich von Access zu Excel connecte. Die Access Datenbank ist nämlich auf einem Server und es wird von verschiedenen PCs darauf zugegeriffen und die ändern alle mit Hilfe des selben Excel Programms die Daten in Access. Ich müsste ja Access die IP mitgeben von dem Nutzer der angesprochen wird.
Nur connecte ich von Excel zu Access immer nur dann wenn jemand mit Excel Änderungen macht und die daurch mit einem Makro in Access gespeichert werden. Nur möchte ich auch Daten in Access abprüfen, wenn der Nutzer von Excel mal nichts tut um neue Meldungen von einem Nutzer "zeitnah" einem anderen Nutzer mitzuteilen.
Ich könnte diese Abfrage ja sekündlich machen mit dem ontimer aber ich denke das wird den Arbeitsfluus in Excel beeinträchtigen.
Hoffe Sie haben jetzt ungefähr eine Vorstellung was mein Programm macht und haben vielleicht eine Lösung für so eine Abfrage.
Im Grunde genommen möchte ich nur Nachrichten von Excel(Nutzer 1) über Access zu Excel(Nutzer 2) senden. Sowas wie E-Mail, aber ohne Outlook, nut intern.

MfG

Holger Wächter




Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Holger Wächter
Geschrieben am: 26.02.2005 17:42:20

Frage war noch offen, hatte es vergessen zu kreuzen. Frage steht eine Zeile hier drüber

MfG

Holger Wächter


Bild


Betrifft: AW: Zeitabfrage in der keine Mausbewegung oder Ein von: Josef Ehrensberger
Geschrieben am: 27.02.2005 00:26:53

Hallo Holger!

Wie du die daten in Access abfragen kannst weist du!
Wie du die Abfrage mit "OnTime" Intervallmässig steuern kannst auch!

Wie du allerdings herausfinden kannst von wem die Änderung durchgeführt
wurde weis ich nicht. Ich habe leider Access nicht installiert und ich
habe auch nicht viele Erfahrungen mit diesem Programm, so das ich dir
bei diesem Problem leider nicht weiterhelfen kann!

Ich stelle die Frage offen, damit sich vielleicht ein anderer damit
auseinandersetzt!


Gruß Sepp


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zeitabfrage in der keine Mausbewegung oder Eingabe"