Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: combobox in zelle einfügen mit vba

combobox in zelle einfügen mit vba
26.09.2004 21:06:14
Johannes
guten abend,
kann mir jemand einen ansatz nennen, wie ich in einer zelle meiner wahl per vba eine combobox mit zwei einträgen (ja/nein) erzeugen kann, und wie ich die werte dieser abfrage?
ich versuche schon etwas über die suchfunktion des forums zu finden, hatte bisher aber keinen erfolg
danke,
jo
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: combobox in zelle einfügen mit vba
ransi
hallo
daten - gültigkeit-zulassen-liste suchst du nicht?
ransi
AW: combobox in zelle einfügen mit vba
26.09.2004 21:19:28
johannes
nope... brauch die lösung, per vba.... ich muss es irgendwie automatisiert hinbekommen
AW: combobox in zelle einfügen mit vba
Ulf
Das geht mit Gültigkeit ganz einfach über VBA, kannst du sogar mit dem Rekorder aufzeichnen.
Ulf
Anzeige
AW: combobox in zelle einfügen mit vba
26.09.2004 23:50:32
johannes
hmmm... ich hab das versucht, aber mit dem macrorekorder funzt das nicht so richtig. ich kriege z.b. keine vordefinierten items da rein...
ich brauch irgendetwas, was mir ein pulldown mit drei items: deutschland, österreich, schweiz macht. und zwar immer einer bestimmten spalte der jeweils aktuellen zeile...
letzteres kriege ich hin, aber eben nicht die erzeugung der combobox mit items....
habe was im internet gefunden, aber auch daraus werde ich nicht schlau, denn anscheinend gibt es zig möglichkeiten so eine doofe combobox zu zaubern?!

Sub test()
Set RangeNameList = Range("RangeNameList").Cells
Worksheets(1).Select
With Worksheets(1)
Set MyDropDown = .Shapes.AddFormControl(xlDropDown, 10, 10, 100, 15)
For Each cell In RangeNameList
MyDropDown.ControlFormat.AddItem cell.Value
Next cell
End With
End Sub

wer könnte mir vielleicht noch einen tipp geben?`
LG
Johannes
Anzeige
AW: combobox in zelle einfügen mit vba
K.Rola
Hallo,
markier die Zellen, die das dropdown haben sollen und starte den Code:
Option Explicit
Sub Zelldropdown()
With Selection.Validation
.Delete
.Add Type:=3, AlertStyle:=1, Operator:=1, Formula1:="Deutschland,Österreich,Schweiz"
.IgnoreBlank = True
.InCellDropdown = True
.ErrorTitle = "Eingabefehler"
.ErrorMessage = "Wählen Sie einen Wert aus dem Zelldropdown."
.ShowError = True
End With
End Sub

Gruß K.Rola
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Combobox in Zelle einfügen mit VBA


Schritt-für-Schritt-Anleitung

Um in Excel eine Combobox in einer Zelle einzufügen, kannst Du VBA verwenden. Hier sind die Schritte, um eine einfache Kombinationsfeld in Zelle zu erstellen, das die Optionen "Ja" und "Nein" enthält:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub ComboboxInZelle()
       Dim myCombobox As OLEObject
       Set myCombobox = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ComboBox.1", _
           Link:=False, DisplayAsIcon:=False, Left:=100, Top:=100, Width:=100, Height:=20)
       With myCombobox
           .Object.AddItem "Ja"
           .Object.AddItem "Nein"
           .Placement = xlMoveAndSize
           .TopLeftCell = Range("A1") ' Ändere die Zelle nach Bedarf
       End With
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus, um die ActiveX Combobox in der angegebenen Zelle zu erstellen.


Häufige Fehler und Lösungen

Fehler 1: Die Combobox wird nicht an der richtigen Stelle angezeigt.
Lösung: Stelle sicher, dass Du die TopLeftCell-Eigenschaft korrekt auf die gewünschte Zelle setzt.

Fehler 2: Die Combobox zeigt keine Einträge an.
Lösung: Überprüfe, ob der Code zur Hinzufügung der Einträge korrekt ist und dass Du die Combobox nach dem Erstellen nicht sofort schließt oder versteckst.


Alternative Methoden

Wenn Du eine einfachere Methode möchtest, um ein Dropdown-Menü in eine Zelle einzufügen, kannst Du die Datenvalidierung verwenden:

  1. Wähle die Zelle, in der das Dropdown-Menü erscheinen soll.
  2. Gehe zu Daten > Datenvalidierung.
  3. Wähle unter Zulassen die Option Liste aus und gib die Werte ein: Deutschland,Österreich,Schweiz.

Diese Methode ist besonders nützlich, wenn Du keine VBA-Kenntnisse hast und eine einfache Auswahlbox benötigst.


Praktische Beispiele

Hier ist ein weiteres Beispiel, wie Du ein Dropdown mit drei Einträgen in einer bestimmten Spalte erstellen kannst:

Sub DropdownInSpalte()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Tabelle1") ' Name der Tabelle anpassen
    With ws.Range("B:B").Validation
        .Delete
        .Add Type:=3, AlertStyle:=1, Operator:=1, Formula1:="Deutschland,Österreich,Schweiz"
        .IgnoreBlank = True
        .InCellDropdown = True
    End With
End Sub

Dieser Code erstellt ein Dropdown-Menü in der gesamten Spalte B.


Tipps für Profis

  • Experimentiere mit der Excel Combobox VBA, um weitere Funktionen hinzuzufügen, wie das Anpassen von Farben oder Schriftarten.
  • Nutze Formularsteuerelemente anstelle von ActiveX-Steuerelementen, wenn Du eine einfachere Implementierung benötigst.
  • Stelle sicher, dass Du die entsprechenden Berechtigungen für die Ausführung von Makros in Excel aktiviert hast.

FAQ: Häufige Fragen

1. Wie kann ich die Werte der Combobox in eine andere Zelle übertragen?
Du kannst die Change-Ereignisprozedur der Combobox verwenden, um den aktuellen Wert in eine andere Zelle zu schreiben, z.B.:

Private Sub ComboBox1_Change()
    Range("C1").Value = Me.ComboBox1.Value ' Überträgt den Wert in Zelle C1
End Sub

2. Kann ich eine Combobox in eine Tabelle einfügen?
Ja, Du kannst eine Combobox in eine Tabelle einfügen, indem Du die TopLeftCell-Eigenschaft auf eine Zelle der Tabelle setzt. Achte darauf, dass die Zelle nicht leer ist, um sicherzustellen, dass die Combobox korrekt positioniert wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige