Hinweistext in ComboBox
#11
(08.07.2022, 14:49)schauan schrieb: ... würde ich den TE erst mal fragen, wo er die denn hat. 

...wurde im Post #2 gleich als erstes abgefragt...
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

[-] Folgende(r) 1 Nutzer sagt Danke an Ralf A für diesen Beitrag:
  • Primo Centurio
Antworten Top
#12
Hallo zusammen,

hier vielleicht noch ein Ansatz für ein ActiveX-Control.

Leider lässt sich die Schriftfarbe nur für das ganze Control inclusive des aufgeklappten Bereichs ändern.

Code:

Const csHinweistext = "Bitte Zahl eingeben!"

Private Sub ComboBox1_Change()
  With ComboBox1
     If .Text = "" Then
        .Text = csHinweistext
     ElseIf .Text = csHinweistext Then
        .ForeColor = RGB(190, 190, 190)
     Else
        .Text = Replace(.Text, csHinweistext, "")
        .ForeColor = vbBlack
     End If
  End With
End Sub

Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
  If ComboBox1.Text = csHinweistext Then ComboBox1.Text = ""
End Sub

Sub Test()
  With ComboBox1
     .Clear
     .Text = csHinweistext
     .AddItem "Erster Text"
     .AddItem "Zweiter Text"
  End With
End Sub

_________
viele Grüße
Karl-Heinz
[-] Folgende(r) 2 Nutzer sagen Danke an volti für diesen Beitrag:
  • Crazy Tom, Primo Centurio
Antworten Top
#13
Halli hallo :)

Danke für die zahlreichen Antworten und Lösungsansätze resp. Codes.

Die ComboBox befindet sich in/auf einem UserForm und der Text der drin steht, sollte zum Beispiel lauten „Materialnummer eintragen“.
AddItem ist leider keine Option, da die Nummer fortlaufend ist und sich nicht wiederholen wird.

Mir gefällt der Ansatz / die Idee, dass in der ComboBox was drin steht und bei der auswahl der ComboBox dann automatisch rausgelöscht wird.

Ich wünsche euch ein schönes Wochenende :)
Bin erst am Montag wieder im Büro, und werde mir eure Vorschläge dann in ruhe anschauen :)

Danke nochmals.

Lg Matteo
Antworten Top
#14
Hallöchen,

Zitat:...wurde im Post #2 gleich als erstes abgefragt...
nö, wurde es nicht. Die Frage lautete
Zitat:welche Combobox? ActiveX oder MS-Forms?


Eine einfache Variante wäre z.B. etwas in der Art (ähnlich Volti's Vorschlag)

Code:
Private Sub UserForm_Activate()
ComboBox1.Value = "Materialnummer eintragen"
ComboBox1.RowSource = "Tabelle1!A1:A3"
End Sub

Der Text wäre dann bis zur ersten Auswahl drin, und dann erst wieder beim nächsten Aktivieren des UF.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • Primo Centurio
Antworten Top
#15
Hallo zusammen :)

Ich war im Urlaub und komme erst jetzt dazu zu antworten.

Ich werde die verschiedenen Vorschläge am Montag ausprobieren und mich dann bei euch melden.

Lg Primo
Antworten Top
#16
(09.07.2022, 09:18)schauan schrieb: ....
Eine einfache Variante wäre z.B. etwas in der Art (ähnlich Volti's Vorschlag)

Code:
Private Sub UserForm_Activate()
ComboBox1.Value = "Materialnummer eintragen"
ComboBox1.RowSource = "Tabelle1!A1:A3"
End Sub

Der Text wäre dann bis zur ersten Auswahl drin, und dann erst wieder beim nächsten Aktivieren des UF.

Nur - wozu sollen solche Klimmzüge gut sein? Zumal, und da bleibe ich eisern, ein Value nie und nimmer ein akzeptabler Hinweistext sondern bestenfalls eine behelfsmäßige Krücke ist. Mal abgesehen davon, dass das Activate Ereignis ebenfalls nur die zweitbeste Wahl ist...
Womit wir (zumindest ich) wieder bei der simpelsten und effektivsten Methode aus Post #2 wären: 
Code:
Combobox1.ControlTiptext = "Auswahl"
Noch besser: direkt im Eigenschaftsfenster eintragen, dann braucht es gar keinen Code...

Aber gut, dass wir mal drüber gesprochen haben...  21
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#17
Hallöchen,

irgendwer hat sich sicher Gedanken gemacht, warum bei vielen Anwendungen und Webseiten in Eingabefeldern ein Hinweistext drin steht und nicht als ControlTipText erscheint. Und sei es nur Geschmacksache ...

Welche Wahl das Activate-Ereignis ist, würde ich nicht allgemein festlegen. Könnte sein, dass da auch die Umstände eine Rolle spielen.

Bei der Eigenschaft wäre es übrigens auch nix anderes als Value, klar, ohne Code und Klimmzüge Smile Allerdings, wenn das UF nur gehidet wird, dann kommt mit dem vorgeschlagenen Activate der Hinweistext wieder. Ansonsten steht die vorherige Auswahl drin.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#18
(04.08.2022, 18:27)schauan schrieb: Hallöchen,

irgendwer hat sich sicher Gedanken gemacht, warum bei vielen Anwendungen und Webseiten in Eingabefeldern ein Hinweistext drin steht und nicht als ControlTipText erscheint. Und sei es nur Geschmacksache ...

...oder Unkenntnis des Sinnvollen oder Machbaren...

Zitat:Welche Wahl das Activate-Ereignis ist, würde ich nicht allgemein festlegen. Könnte sein, dass da auch die Umstände eine Rolle spielen.

Bei der Eigenschaft wäre es übrigens auch nix anderes als Value, klar, ohne Code und Klimmzüge Smile Allerdings, wenn das UF nur gehidet wird, dann kommt mit dem vorgeschlagenen Activate der Hinweistext wieder. Ansonsten steht die vorherige Auswahl drin.

...klar... wenn man auf den Value besteht, dann darf man sich das Leben selbstverständlich aber trotzdem unnötigerweise schwer machen...  Blinksmiley
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#19
Hallöchen,

Zitat:...oder Unkenntnis des Sinnvollen oder Machbaren...
Die Geschütze werden immer schwerer ...
Schon als normaler Excelanwender werde ich mit zig aufploppenden Texten oder Menüs oder was auch immer beglückt. In Dialogen sind oft Vorbelegungen in Auswahlfeldern oder wo auch immer. Als Fragesteller würde ich nun nach der für mich sinnvollen Variante fragen. Jemanden hier so zu bezichtigen oder das allgemein zu behaupten ist schon ein starkes Stück. Das bringt keinen weiter. (Ja, man würde als Anfänger vielleicht den einen oder anderen Fachbegriff nicht kennen. Aber darum geht es ja nicht.)

Ich hätte da mal noch zweieinhalb fachliche Argumente für eine Ausgabe als Inhalt / Value
- Wenn man im UF mit der tab-Taste arbeitet, erscheinen die Controltiptexte nicht
- bis die Controltiptexe erscheinen, dauert etwas. Textinhalte sind da.
- programmierte Textinhalte kann man flexibel einsetzen. Zuweilen bestehen Abhängigkeiten von vorangegangenen Eingaben.
(--> könnte man natürlich auch mit CTT machen)
Kann man sicher noch erweitern ...

Zitat:...klar... wenn man auf den Value besteht, dann darf man sich das Leben selbstverständlich aber trotzdem unnötigerweise schwer machen...
Ich glaube, wir machen dem TE mit dieser Diskussion das Leben unnötigerweise schwer.
Eine Gegenüberstellung von Vor- und Nachteilen der verschiedenen Varianten wäre sicher ausreichend.
Ansonsten - ich hab meine Meinung, Du hast Deine, und gut ist. 100
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste