Ich bin bemüht, einen dem Grunde nach funktionierenden code umzuschreiben, um die ständige Aktivierung verschiedener Tabellenblätter und das Hin- und Herhopsen der Einfügemarke auf ein Minimum zu bringen.
Ich habe ein UF, auf welchem sich viele Textfelder befinden. Wenn ich ein solches mit einem Doppelklick anklicke, soll folgende Routine ablaufen:
Der Inhalt der aktiven Zelle der Spalte 5 des Tabellenblattes "Daten" soll in dem UF "frmTerminEintrag" in der geklickten Zelle erscheinen.
Im Tabellenblatt "Kalender", in welchem in Spalte 1 das Datum vom 1.1.05 bis z.B. 31.12.06 und in Zeile 1 die Uhrzeit ab 6:00 bis 21:00 in 1/2-Stunden-Schritten steht, soll nach dem Doppelklick auf die geklickte Textbox in dem Tabellenblatt "Kalender" der Inhalt entweder der Textbox, oder der Zellinhalt der aktiven Zelle der Spalte 5 des Blattes "Daten" in der Schnittzelle aus Datum und Uhrzeit eingetragen werden, ohne dass das Tabellenblatt "Kalender" aktiviert und die entsprechende Zelle selektiert wird. Ich möchte erreichen, dass immer derselbe dafür erforderliche Code angesprochen wird und er selbst "weiß", welche der vielen Textboxen ich gerade doppelgecklickt habe.
Neben jeder Textbox steht ein Label, dessen Caption im richtigen Format die Uhrzeit abbildet (z.B. 6:30)
Ich bin bis hierher selbst gekommen: (Die Fragezeichen dokumentieren meine Unwissenheit ;-)
Sub Schnittzelle_Suchen_ohne_Activate_und_Select()
Dim datum As Date, zeit As date, zeile As Long, spalte as Long
Dim zeilegefunden As Boolean, spaltegefunden As Boolean, kalblatt as Worksheet
Set kalblatt = Worksheets("Kalender")
datum = CDate(frmTerminEintrag.txtSuchDatum.Value)
zeit = CDate(frmTerminEintrag.?.Value) '''caption des labels neben der angeclickten Textbox?
For zeile = 2 To 5000
If kalblatt.Cells(zeile, 1) = Datum Then
zeilegefunden = True
Exit For
End If
Next zeile
For spalte = 2 To 64
If Format(kalblatt(Cells(1, spalte)).Value, "hh:mm") = zeit Then
spaltegefunden = True
Exit For
End If
Next spalte
If zeilegefunden = True And spaltegefunden = True Then
MsgBox "Ab hier kann Fritz wieder alleine weitermachen."
End sub
Mein Hirn ist nicht mehr variabel genug zu bestimmen, wie die Variable "zeit" gebastelt werden muss.
Meine Vorstellung ist, dass nach Doppelclick auf eine Textbox aus dem nebenstehenden Label das "Caption" (also z.B. 6:30) in derVariablen "zeit" gespeichert wird.
Ich hoffe, ich habe mich so erklärt, dass das Problem deutlich wird und hoffe mal wieder auf Nachhilfe von Euch.
Danke für Eure Mühe.
Grüße, Fritz