Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Textfeld löschen als "Ereignis beim Klicken"





Frage

Hallo, ich habe ein Formular (Startformular), in dem ich ein Textfeld und einen Suchbutton habe. Nach Eingabe im Textfeld und klicken des Button wird eine Abfrage ausgeführt, die den Inhalt des Textfeldes als Suchkriterium hat. Das Textfeld hat eine Eingabeformatierung. Nach erfolgreicher Suche gehe ich in das Startformular zurück und möchte eine weitere Suche ausführen. Dazu möchte ich, das der Inhalt des Textfeldes geleert wird, sobald ich mit dem Cursor in das Textfeld klicke. Dazu gibt es ja in den Eigenschaften die Funktion "Ereignis beim Klicken). Leider kenne ich den Befehl bzw. VBA-Code nicht. Zusätzlich möchte dass nach dem leeren des Textfeldes der Cursor auf die erste Stelle springt. Vielen Dank für Eure Hilfe.

Antwort 1 von Teddy7

Feldname = ''
Feldname.setfocus

Gruß
Teddy

Antwort 2 von sv_t

Hallo und Danke für die schnelle Antwort.

Klappt leider nicht so ganz.

Ich habe im Eigenschaftenfeld "Ereignis beim Klicken" auf Ereignisprozedur gesetzt und als Code folgenden geschrieben:

Private Sub Suchbegriff1_Click()

Feldname = ''"
Feldname.SetFocus

End Sub

Aber beide Aktion werden nicht ausgeführt.

Antwort 3 von sv_t

Und es geht doch.

Ich habe dann mal anstelle Feldname = "" den Feldname Suchbegriff1 eingesetz und schon funktioniert das Löschen.

Komischerweise wird das Feld gelöscht und der Cursor springt ganz nach links, wenn ich nur den ersten Befehl verwende, also Suchbegriff1 = "".
Der zweite Befehl bewirkt garnichts.

Trotzdem vielen Dank.
Freundliche Grüße.

Antwort 4 von Marie

Zusätzlich möchte dass nach dem leeren des Textfeldes der Cursor auf die erste Stelle springt.

das hattest du geschrieben und das bewirkt die zweite zeile.

gruß marie

Antwort 5 von sv_t

Hallo Marie,

das macht es je komischerweise nicht.
Ich habe beide Befehlszeilen mal einzeln eingegeben.

Bei der Zeile Feldname = "" wird das Feld gelöscht und der Cursor springt nach links (obwohl ich ein Eingabeformat festgelegt habe, das auch die Eingabe mittendrin erlaubt).
Bei der Zeile Feldname.SetFocus passiert garnichts, also der Cursor bleibt dort wo ich in das Feld klicke.

Mein Problem ist mit Euren Antworten gelößt -> vielen Dank.
Aber erklären kann ich es mir nicht.

Gruß Sven.

Antwort 6 von Marie

bei Feldname.SetFocus passiert gar nix, wenn das zweimal derselbe Feldname ist, weil der Cursor ohnehin in dem Feld drin ist. Nimm doch mal den namen des Feldes daneben, falls mehrere da sind.

Statt dem Wort "Feldname" musst Du den Namen deiner jeweiligen Felder einsetzen.

Du hast geschrieben Du möchtest zum Beispiel feld5 leeren und dann den Cursor vorne in das erste feld namens feld1 setzen, also dann hat dir teddy die Antwort gegeben

feld5=""
feld1.setfocus

jetzt begriffen?? Was sollte er sonst schreiben wenn Du nicht schreibst wie deine felder heissen?

Gruß marie

Antwort 7 von sv_t

Soweit habe ich das geschnallt.
Habe mich also bei der Fragestellung ungenau ausgedrückt.
Es geht generell nur um das eine Textfeld namens Suchbegriff1

Dennoch bewirkt der Befehl Suchbegriff1.SetFocus bei mir nix.
Wenn ich nur diesen Befehl verwende und ins Textfeld namens Suchbegriff1 klicke, bleibt der Cursor an der Stelle wo ich reinklicke.

Aber wie gesagt, das Problem ist ja mit dem ersten Befehl schon gelößt.

Gruß Sven.

Antwort 8 von Marie

Jo eben, das hab ich doch geschrieben, der Focus ist doch schon drin, also war deine frage im allerersten Posting:

Zusätzlich möchte dass nach dem leeren des Textfeldes der Cursor auf die erste Stelle springt.

von vornerein überflüssig. Aber das konnte doch Teddy nicht wissen, dass Du nur ein feld hast oder der fokus schon da ist wo er sein soll.

Trotzdem haste doch jetzt gelernt wie du den Focus dahinkriegen kannst wo Du ihn haben willst, wenn er mal nicht dort ist, wo er sein soll. Hoffe Du hast jetzt kapiert, dass nicht nichts passiert, sondern tatsächlich der Focus durch diesen Befehl dahingesetzt wird, du es aber nicht siehst weil er da schon war. :-))

Gruß marie

Antwort 9 von bubbelbub

Das war spannend.

Antwort 10 von Marie

@bubbelbub

Du hast doch schon an der ersten Rückfrage gemerkt, dass Sven ein Anfänger ist. Dann zwingt Dich doch niemand weiterzulesen, wenn ich es ihm dreimal erkläre.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: