Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Timer in UserForm
#1
Hallo liebes Forum,

Ich habe mal wieder ein Problem ich möchte gerne mehrere Timer die sind auch schon festgelegt in der userform über eine TextBox ändern. sprich die Zeit die abläuft soll veränderbar über die userfom sein hoffe das ist verständlich. :20:

Ich habe die Timer und ihr Funktion in einem Modul und die Timer sind auch schon im Public als variable drin nur wie kann ich jetzt die Zeit über die TextBox bei Auswahl des Timers  ändern ??

Hier mal meine Codes die ich Für die Timer und Die Zeit habe:

Timer Code:
       

'Alle Teimer anzeigen lassen die verändert werden können
    With Me.ComboBox1
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With
   
    With Me.ComboBox2
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With

Hier der Zeit Code:

'Variablen für die Timer  Zeit Definieren
  Public Const T1Timer1 As Long = 10000
  Public Const T1Timer2 As Long = 6000
  Public Const T1Timer3 As Long = 4000
 
  Public Const T2Timer1 As Long = 10000
  Public Const T2Timer2 As Long = 6000
  Public Const T2Timer3 As Long = 4000

'Variablen für die Zeit anzeige Definieren
  Public Const Z1Timer1 As Long = 10
  Public Const Z1Timer2 As Long = 6
  Public Const Z1Timer3 As Long = 4
 
  Public Const Z2Timer1 As Long = 10
  Public Const Z2Timer2 As Long = 6
  Public Const Z2Timer3 As Long = 4

Die Timer sind in Modul1 und die Userform Hat zur Auswahl des Timers eine Combobox wie man sehen kann nur wie kann jetzt die Zeit und der Timer der abläuft uber die Userform geändert werden ??

Wäre für jede Hilfe dankbar denn ich komm einfach nicht drauf. Huh

Lg Florian
Live is a Game Play it
Antworten Top
#2
Hallo liebes Forum,

Ich habe mal wieder ein Problem ich möchte mehrere Timer in einer UserForm ändern und zwar habe ich ein Modul1 wo die Timer drin sind und die Variablen sind schon im Public Modus also muss ich nur noch von der UserForm aus darauf zugreifen und sie dann bei Eingabe eines wertes ändern, die Timer die aus wählbar sind, sind in einer Combobox. Hoffe ich hab mich verständlich ausgedrückt. Blush
Kurz form: die Timer sollen Bei Eingabe einer Zahl geändert werden.

Hier mein Code von den Timern:
die Fett Druck Sachen im Code das sind die Timer.

'Die Zellen auswahl der Aktiven Zeile beginnt ab hier und der Timer wird gesartet
     Call MsgBoxTimeout(0, "This message box will be closed after Z1Timer1 seconds The Copied Text are in The Clipboard", "Auto Close MsgBox", vbInformation, 0, T1Timer1)
         C = Activecell.Row
             Cells(C, 3).Select
             Selection.Copy

Hier der Code von der UserForm:
       

'Alle Teimer anzeigen lassen die verändert werden können
    With Me.ComboBox1
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With
   
    With Me.ComboBox2
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With

Und noch Die Timer Variablen:
die Fett Druck Sachen im Code das sind auch hier die Timer.

'Variablen für die Timer  Zeit Definieren
  Public Const T1Timer1 As Long = 10000
  Public Const T1Timer2 As Long = 6000
  Public Const T1Timer3 As Long = 4000
 
  Public Const T2Timer1 As Long = 10000
  Public Const T2Timer2 As Long = 6000
  Public Const T2Timer3 As Long = 4000

'Variablen für die Zeit anzeige Definieren
  Public Const Z1Timer1 As Long = 10
  Public Const Z1Timer2 As Long = 6
  Public Const Z1Timer3 As Long = 4
 
  Public Const Z2Timer1 As Long = 10
  Public Const Z2Timer2 As Long = 6
  Public Const Z2Timer3 As Long = 4

Danke schon mal im voraus. Blush
LG Florian
Live is a Game Play it
Antworten Top
#3
Hallo Florian,

wenn Du mit Timer die T1Timer1 und Konsorten meinst, das geht nicht, denn eine Konstante kann ihren Wert nicht ändern.
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#4
(20.03.2018, 13:40)Steffl schrieb: Hallo Florian,

wenn Du mit Timer die T1Timer1 und Konsorten meinst, das geht nicht, denn eine Konstante kann ihren Wert nicht ändern.
Hi Steffl,

danke für die Antwort und wie könnte ich das ganze doch zum laufen bringen??
Live is a Game Play it
Antworten Top
#5
Hallo Florian,

Code:
'Variablen für die Timer  Zeit Definieren
  Public T1Timer1 As Long
  Public T1Timer2 As Long
  Public T1Timer3 As Long

  T1Timer1 = 10000
  T1Timer2 = 6000
  T1Timer3 = 4000
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#6
und so könnte ich das ganze dann auch über die UserForm ändern??

ich füge mal meine Datei als Anhang ein um es verständlicher zu machen.
Live is a Game Play it
Antworten Top
#7
Hallo Florian,

außerhalb einer Prozedur geht die Zuweisung eines Wertes in die Variable auch nicht.

Code:
Private Sub UserForm_Initialize()

'Startet das Programm und legt die Position mittig fest
   With UserForm
        ' 0: Manuell;
        ' 1: Fenstermitte
        ' 2: Bildschirmmitte
        ' 3: Windows-Standard
        .StartUpPosition = 1
        .Top = 10
        .Left = 10
    End With
  
  T1Timer1 = 10000
  T1Timer2 = 6000
  T1Timer3 = 4000
    
'Füll Farbe 1
'Rot
    ScrollBar1Red.Max = 255
    ScrollBar1Red.Min = 0
'Grün
    ScrollBar1Green.Max = 255
    ScrollBar1Green.Min = 0
'Blau
    ScrollBar1Blue.Max = 255
    ScrollBar1Blue.Min = 0
        
'Startwerte für die Text Boxen festlegen
    TextBox1Red.value = 0
    TextBox1Green.value = 0
    TextBox1Blue.value = 0
        
'Füll Farbe 2
'Rot
    ScrollBar2Red.Max = 255
    ScrollBar2Red.Min = 0
'Grün
    ScrollBar2Green.Max = 255
    ScrollBar2Green.Min = 0
'Blau
    ScrollBar2Blue.Max = 255
    ScrollBar2Blue.Min = 0
        
'Startwerte für die Text Boxen festlegen
    TextBox2Red.value = 0
    TextBox2Green.value = 0
    TextBox2Blue.value = 0
        
'Alle Teimer anzeigen lassen die verändert werden können
    With Me.ComboBox1
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With
    
    With Me.ComboBox2
         .AddItem "Timer 1"
         .AddItem "Timer 2"
         .AddItem "Timer 3"
         .ListIndex = 0 'Vorbelegung "Timer 1" bei Starten des Programmes
    End With

'Zeigt die Aktuelle Füll Farbe im Image3
  Call RGB_auslesen1
  
'Zeigt die Aktuelle Füll Farbe im Image4
  Call RGB_auslesen2
End Sub
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#8
Super danke Jetzt hab ich es auch kapiert :16:
Live is a Game Play it
Antworten Top
#9
Ich habe es nun getestet aber es geht nicht die timer sind nun unendlich lang bis ich die msgbox wieder schließe. :s
Live is a Game Play it
Antworten Top
#10
Hallo Florian,

vielleicht kleinere Werte Huh

Code:
T1Timer1 = 100
  T1Timer2 = 60
  T1Timer3 = 40
Gruß Stefan
Win 10 / Office 2016
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste