Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1588to1592
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
Inhaltsverzeichnis

Textfeld LostFocus ToolTipText

Textfeld LostFocus ToolTipText
30.10.2017 13:53:59
Martin
Hallo Community
Ich habe zwei Fragen:
1) In einem Textfeld soll ein Datum eingegeben werden (siehe vereinfachter Anhang, in meiner Word-Datei hat es mehrere Textfelder). Beim Verlassen des Textfeldes, z. B. wenn der Benutzer ins nächste Textfeld klickt, wird in LostFocus mit IsDate überprüft, ob die Eingabe ein Datum ist. Wenn nicht, soll der gesamte Inhalt markiert werden und der Focus wieder zurück ins Textfeld gesetzt werden, so dass der Benutzer korrigieren kann. Das klappt aber nicht, der Focus verschiebt sich zum nächsten, angeklickten Textfeld.
2) Meines Wissens kann diesem Textfeld kein "ToolTipText" beigefügt werden (z. B. bei MouseMove). Stimmt das? Als Ersatz, habe ich gelesen, könnte man z. B. ein Label erstellen, das Visible wird, sobald MouseMove aufgerufen wird (dort z. B. mit Sleep die Anzeigedauer festlegen). Bei mir hat aber ein solches Label (Bezeichnung, ActiveX-Steuerelement) keine Visible-Eigenschaft, so dass ich es im MouseMove Visible machen könnte.
Was für Möglichkeiten gibt es, dem Benutzer einen Hilfstext anzuzeigen, z. B. wenn die Maus über das Textfeld zieht (vielleicht mit einer halben Sekunde Verzögerung vor dem Erscheinen, damit der Bildschirm bei Mausbewegungen über verschiedene Textfelder nicht allzu nervös wird)?
Besten Dank
Martin
https://www.herber.de/bbs/user/117300.txt

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textfeld LostFocus ToolTipText
30.10.2017 16:01:40
onur
Und was sollen wir mit einer .txt-Datei?
AW: Textfeld LostFocus ToolTipText
30.10.2017 17:45:42
Martin
Hallo onur
Nun, es ist scheinbar nicht erlaubt, per "Zum File-Upload" eine Word-Vorlage mit Makros (Endung .dotm) zu uploaden. Beim Klick auf "Datei zum Server" erscheint "Kein Upload möglich". Ich habe deshalb die Endung in "txt" umbenannt, und habe dann allerdings VERGESSEN, den Vermerk "bitte Dateiendung in .dotm zurücksetzen" aufzuschreiben. Sorry, mein Fehler!
Martin
AW: Textfeld LostFocus ToolTipText
30.10.2017 19:36:54
Mullit
Hallo,
zu 1) Du mußt das Event mit einem Timer 'breaken':
Option Explicit
Private Sub TextBox1_LostFocus()
Dim RetVal As Integer
If Not IsDate(TextBox1.Text) Then
Beep
RetVal = MsgBox("Bitte das Datum im Format dd.mm.yyyy eingeben.", vbOKOnly, "Falsches  _
Datumsformat")
Call Application.OnTime(When:=Now, Name:=CodeName & ".prcFocusReset")
End If
End Sub
Friend Sub prcFocusReset()
With TextBox1
.Select
.SelStart = 0
.SelLength = Len(TextBox1.Text)
End With
End Sub

zu 2) guck Dir Isis Control-Tipp-Tutorial an, ist allerdings für ActiveX-Controls in Excel-Tabellen, müsstest Du Dir ggf. für Word umschreiben.
http://www.office-loesung.de/ftopic532274_0_0_asc.php
Gruß, Mullit
Anzeige
AW: Textfeld LostFocus ToolTipText
01.11.2017 10:28:51
Martin
Hallo Mullit
Deine Idee Funktioniert super. Danke! Da ich allerdings mehrere Textfelder habe, die eine solche Prozedur prcFocusReset aufrufen müssen, möchte ich diese global erreichbar deklarieren, z. B. in einem Modul.
mit dem Aufruf:
Call Application.OnTime(Now, " 'prcFocusReset " & Me.TxtBoxBeginnDerReiseDatum & " '")
der im LostFocus der entsprechenden TextBox steht, und die Prozedur selber so aussieht (oder mit "Friend" im allgemeinen Teil deklariert):
Public Sub prcFocusReset(ByVal Textfeld As TextBox)
With Textfeld
.Select
.SelStart = 0
.SelLength = Len(Textfeld)
End With
End Sub

funktionier es nicht. Es wird nicht einmal in die Prozedur gesprungen. Kannst du mir weiterhelfen?
Danke auch für den Tipp mit dem ToolTipText. Ich werde mir das noch genauer anschauen.
Gruss Martin
Anzeige
AW: Textfeld LostFocus ToolTipText
02.11.2017 16:07:19
Mullit
Hallo,
ah ja, da ist es meistens besser an Stelle einer Just-In-Time-Prüfung, nachdem die Eingabe erfolgt ist, die Textboxen über einen zusätzl. CommandButton auf Fehler zu prüfen...
Gruß, Mullit
AW: Textfeld LostFocus ToolTipText
03.11.2017 00:10:27
Martin
Hallo Mullit
Ja, das wäre eine Möglichkeit, aber ich möchte, dass das Programm diese Prüfung ohne Interaktion des Benutzers ausführt (indem er auf den CommandButton klickt). Deshalb wäre ich froh, zu wissen, wie man einen Call-Aufruf (mit OnTime) macht, wenn nicht nur der Name der Funktion (also: Call Application.OnTime(Now, "prcFocusREset")), sondern auch noch einen Parameter mitgibt (der Parameter soll die TextBox selber sein, so dass ich dann in der Prozedur den gesamten Inhalt der mittels Parameter übergebenen TextBox markieren kann).
Wer kann mir bei diesem Prozedur-Aufruf - mit Parameter! - helfen?
Gruss Martin
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige