Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufzeitfehler 13

Laufzeitfehler 13
16.02.2007 18:36:00
kiron
Hallo!
Ich bin ganz neu in der VBA Programmierung und stehe vor einem
für mich nicht ganz einfachen Problem.
Habe folgenden VBA Code
Code:

Private Sub txtEnde_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Start As Date
Dim Ende As Date
Dim Ergebnis As Date
Start = txtStart.Value
Ende = txtEnde.Value
If Start = "" Or Ende = "" Then
txtDifferenz.Enabled = True
Ergebnis = txtDifferenz.Text
End If
Ergebnis = Ende - Start
txtDifferenz.Value = Ergebnis
End Sub

Ich möchte folgendes machen.
In die Textbox Start eine Uhrzeit eingeben z.B. 15:00 und in die
Textbox Ende 16:07. beim Verlassen der Textbox Ende wird
autromatisch die Differnz berechnen und in die textbox Differnz
geschrieben.
Beim Starten der Form wird die Enabled Eigenschaft der Textbox
Differenz auf false gesetzt.
Jetzt kann es vorkommen das keine Startzeit oder keine Endzeit
eingegeben wird, dann muss die Differnz von Hand eingegeben werden können und dafür wird das textfeld Differenz wieder Aktiviert.
Fuktioniert auch soweit solange immer eine Start und eine Endzeit angegeben wird.
Wenn ich die Startzeit oder die Endzeit nicht eingebe dann bekomme ich
einen Laufzeitfehler mit der Nummer 13 Typen unverträglich.
Kann mir da bitte jemand ein bischen weiterhelfen.
Vielen dank schon im voraus für jede Hilfe.
gruss
kiron

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 13
16.02.2007 20:21:00
Anton
Hallo kiron,
so vllt:

Private Sub txtDifferenz_Exit(ByVal Cancel As MSForms.ReturnBoolean)      
  Dim Ergebnis As Date  
  If IsDate(txtDifferenz.Value) Then  
    Ergebnis = txtDifferenz.Text
  Else
    txtDifferenz.SetFocus
  End If  
End Sub  
Private Sub txtEnde_Exit(ByVal Cancel As MSForms.ReturnBoolean)        
  Dim Start As Date  
  Dim Ende As Date    
  Dim Ergebnis As Date  
  On Error Resume Next    
  If IsDate(txtSTART.Value) And IsDate(txtEnde.Value) Then    
    Start = txtSTART.Value
    Ende = txtEnde.Value
    Ergebnis = Ende - Start
    txtDifferenz.Value = Ergebnis
  Else
    txtDifferenz.Enabled = True
    txtDifferenz.SetFocus
  End If  
End Sub  

mfg Anton
Anzeige
AW: Laufzeitfehler 13
16.02.2007 22:11:00
kiron
Hallo Anton!
Vielen dank, so funktionierts genau wie ich wollte.
gruss
kiron

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige