Von |
schoentalegg |
eMail |
|
Am |
15. August 2008 um 13:55:24 |
Frage |
Hallo Leute ich erstelle ein Programm, mit dem Daten verschiedener Herkunft (aber alle in Excel) bearbeitet werden. Da die Daten von Kunden stammen, kommen Sie unstrukturiert daher. Daher habe ich ein Userform gemacht, wo der Benutzer für jede benötigte Information abgefragt wird, in welcher Spalte sich die entsprechenden Daten befinden.
Damit das ganze einfach zu bedienen ist, kann der Benutzer auf dem Excel des Kunden in der entsprechenden Spalte eine Zelle markieren klicken und das Userform übernimmt dann diese Spalte.
Die angeklickte Spalte wird mit OnTIme automatisch jede Sekunde in die Userform übernommen.
Das klappt hervorragend nur hat das ganze einen Schönheitsfehler. Der Mauszeiger verändert sich jede Sekunde kurzzeitig in eine Sanduhr. Das nervt und stört die Bedienung des Programms. Kann man diese Flackern irgendwie abstellen?
Hinweis: Ich kann die aktualisierung des UserForms nicht mit einer Ereignisprozedur auf dem Tabellenblatt arbeiten, da die Daten wie gesagt von extern kommen.
Anbei der Code des Timers:
1. Code in einem ModulSub TimerStart() blnTimer = True Timer End Sub Sub Timer() If blnTimer Then frmSpalten.txtSpalteMarkiert.Value = _ Left(Selection.EntireColumn.AddressLocal(False, False), _ InStr(1, Selection.EntireColumn.AddressLocal(False, False), ":") - 1) Application.OnTime Now + TimeValue("00:00:01"), "Timer" End If End Sub Sub TimerStop() blnTimer = False End Sub 2. Code im Userform zum starten und Beenden des TimersPrivate Sub UserForm_Activate() TimerStart End Sub Private Sub UserForm_Deactivate() TimerStop End Sub |
|