Dop down mit Platzhalter Text
#1
Hallo,

ich habe ein Problem was ich mit Hilfe von Google und YouTube nicht lösen kann. Vielleicht suche ich auch einfach nach einer falschen Anleitung/ Code.

Ich habe in Excel ein Arbeitsblatt mit dem Namen Bestand und einer dynamischen Tabelle. Hier Hier habe ich im Namensmanager Aromaliste angelegt. 

Im Arbeitsblatt Eingabeformular will ich in den Zellen I12, I14, I16, I18, I20, I22, I24, I26, I28 und I30 ein dynamisches drop down Menü (AromaListe) haben. In diesem Drop down Menü will ich einen Platzhalter Text  (Aroma auswählen) haben, der immer angezeigt wird sobald ich das Eingabeformular aufrufe. Dieser Platzhalter steht aber nicht in der dynamischen Tabelle im Arbeitsblatt Bestand und soll da auch nicht stehen. Der Platzhaltertext soll im drop down Menü  anwählbar sein, falls ich mich bei einem Rezept mal vertippt habe und Aroma auswählen kann.

Ich finde einfach keine passende Lösung über Google.

Evtl könnt ihr mir sagen wonach ich suchen muss, was echt nett wäre.
Antworten Top
#2
Hallo,

hilft das ?

https[:]//www.automateexcel.com/how-to/default-value-drop-down-list/

mfg


PS: URL ohne "[]"
Antworten Top
#3
Es war doch einfacher als man denkt, nur bin ich zufällig auf diese Idee gekommen.

Ich habe ja in dem Abreitsblatt Bestand eine dynamische Tabelle. Die Tabelle hat eine Überschrift, ist aber nicht sichtbar, da ich den Text in weiß gesetzt habe. Dort habe ich den Platzhalter Text reingeschrieben (Natürlich in weiß).

So habe ich nun auch den Platzhalter im drop downfeld stehen, ohne das er direkt in der eigentlichen Aroma Übersicht auftaucht.

Mit folgenden bedingten Formatierungen konnte ich dann Aroma wählen eine eigene Hintergrundfarbe geben genauso eine Hintergrundfarbe für alle anderen Aromen.

Aroma wählen:
=I12="Aroma wählen"

Aromen:
=NICHT(I1048570="Aroma auswählen")

------

Mit diesem VBA Code wird mir Aroma wählen immer standardmäßig angezeigt wenn das Arbeitsblatt geöffnet wird.

Private Sub Worksheet_Activate()
Dim rng As Range
Dim zelle As Range

Set rng = Union(Range("I12"), Range("I14"), Range("I16"), Range("I18"), Range("I20"), _
Range("I22"), Range("I24"), Range("I26"), Range("I28"), Range("I30"))

For Each zelle In rng
If Trim(zelle.Value) = "" Then
zelle.Value = "Aroma wählen"
End If
Next zelle
End Sub

------

Wenn ich Aromen nicht mehr haben will bzw die Felder leeren will, wird automatisch Aroma wählen wieder standardmäßig gesetzt mit diesem Code:

Sub FormularLeeren()
' Einzelne Zellen leeren
Range("F12").ClearContents
Range("F14").ClearContents
Range("F16").ClearContents
Range("F18").ClearContents

' Zellbereiche leeren
Range("I12:I30").ClearContents
Range("J12:J30").ClearContents

' Platzhalter in bestimmten Zellen in Spalte I wieder einfügen
Dim zelle As Range
Dim rng As Range

Set rng = Union(Range("I12"), Range("I14"), Range("I16"), Range("I18"), Range("I20"), _
Range("I22"), Range("I24"), Range("I26"), Range("I28"), Range("I30"))

For Each zelle In rng
zelle.Value = "Aroma wählen"
Next zelle
End Sub

------

Im großen und ganzen war es doch einfacher als ich dachte, da ich nur zu komplex dachte und nicht an die einfache Dinge. Bei den Codes musste ich ab und an mal chat gpt fragen wenn ich wo nicht hinter gestiegen bin.
Antworten Top


Gehe zu:


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