2.2k Aufrufe
Gefragt in Tabellenkalkulation von tomschi Mitglied (879 Punkte)
Wünsche allseits einen wunderschönen Guten Morgen!

Ich brauche mal wieder die Hilfe von Profis.
In einer Textbox sollen per "Optionbutton" vordefinierte "Sonderzeichen" an der aktuellen Cursorposition eingegeben werden.

Da die Beschreibung etwas kompliziert ist, habe ich nachstend eine Musterdatei hochgeladen.

www.file-upload.net/download-1774978/Userform_Test01.xls.html

Vielleicht kann mir jemand bei der Problemlösung behilflich sein.

Ciao

Tom

7 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tom,

ein Ansatz.

Private Sub OptionButton1_Click()
Controls("Textbox" & Me.Tag) = Controls("Textbox" & Me.Tag) & OptionButton1.Caption
End Sub

Private Sub TextBox1_Change()
Me.Tag = "1"
End Sub

Private Sub TextBox2_Change()
Me.Tag = "1"
End Sub

Private Sub TextBox3_Change()
Me.Tag = "1"
End Sub

Private Sub TextBox1_Enter()
Me.Tag = "1"
End Sub

Private Sub TextBox2_Enter()
Me.Tag = 2
End Sub

Private Sub TextBox3_Enter()
Me.Tag = 3
End Sub

Gruß hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Danke, für Deine Rückmeldung.
Um ehrlich zu sein habe ich Deinen Code nicht wirklich
durchschaut.

"ě" wird - auch wenn der Cursor in Textbox2 steht - bis dato immer nur in die Textbox1 eingefügt.
Die anderen Zeichen muss ich wie zum Code hinzufügen?
Nach dem Klick auf "ě" soll sich der Cursor dahinter positionieren und der Optionsbutton soll wieder (z.B. für das nächste "ě") zurückgesetzt werden.

"ě" = e mit Hatschek (wird leider "falsch" dargestellt)
Allgemeine Frage:
Wie kann ich die tschechischen "Sonderzeichen" in Excel korrekt eingeben? Bis dato habe ich diese von Word kopiert.

Ciao

Tom (= Anfänger)
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tom,

ich habe nur den Code für den ersten OptionsButton gemacht, den mußt Du für die restlichen auch noch anlegen. Dann dürfte es kein Problem geben. Bei mir ging es für den ersten OptionsButoon.

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hi Hajo!

Was genau macht
Private Sub TextBox1_Change()
Me.Tag = "1"
End Sub

Warum wird dies benötigt?

Wie kann ich den Cursor wieder in die zuletzt aktive
Textbox (am Ende) positionieren?
Die Optionsbutton kann man wie auf "inaktiv" setzen?

Sorry, für die vielen Fragen.

Ciao

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tom,

wenn Du den OptionsButton betätigt muss ich doch wissen n welche Texztbox ich das schreibenmuss.
Enter bei aktivate und Change bei Eingabe

Private Sub OptionButton1_Click()
Controls("Textbox" & Me.Tag) = Controls("Textbox" & Me.Tag) & OptionButton1.Caption
Controls("Textbox" & Me.Tag).setfocus
End Sub


Gruß Hjao
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Mahlzeit!

Ich werde mir den Code zu Hause in Ruhe ansehen.
Vielleicht kann ich dann verstehen was genau der
Code macht.

Ciao

Tom
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Guten Morgen!

Zuerst hatte ich noch das Problem, dass der Cursor immer in die Textbox1 springt (siehe Antwort1), aber dann dachte ich mir, man
müßte in z. B.
Private Sub TextBox2_Change()
Me.Tag = "1"
End Sub

bei Me.Tag die Zahl 1 durch 2 ersetzen.
Siehe da --> es klappt.

HERZLICHEN DANK für die tolle Unterstützung!

Tom
...