Microsoft Excel

Herbers Excel/VBA-Archiv

Dropdownmenü Liste automatisch erweitern

Betrifft: Dropdownmenü Liste automatisch erweitern von: thomas.goebel@aol.com
Geschrieben am: 28.07.2014 08:53:26

Hallo liebe Profis,

ich habe in einer Excel Arbeitsmappe 2 Tabellen (ActionLog und Category).

In Actionlog werden Daten eingegeben während in Category die fest hinterlegten Bestandteile liegen. In Category in Spalte E sind Namen hinterlegt, die als Basis für ein Dropdownmenü in Actionlog (Spalte H) dienen.
Die Auswahl in Actionlog klappt soweit auch. Wenn man allerdings einen Namen eingibt, welcher nicht in Category Spalte E vorhanden ist, dann gibt es bekannte Fehlermeldung. Wie kann ich es bewerkstelligen, dass Einträge, welche nicht in der Liste (Category Spalte E) sind, automatisch dort eingetragen werden und somit bei der nächsten Auswahl berücksichtigt werden?

Sonnige Grüße
Thomas

  

Betrifft: AW: Dropdownmenü Liste automatisch erweitern von: Beverly
Geschrieben am: 28.07.2014 10:26:18

Hi Thomas,

mit folgendem Code im Codemodul des Tabellenblattes

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim rngZelle As Range
   Dim strNamen As String
   If Not Intersect(Target, Range("H1:H18")) Is Nothing Then  '<== Bereich mit Gültigkeiten  _
anpassen
      strNamen = ThisWorkbook.Names("Namen").RefersTo
      With Worksheets("Category")
         Set rngZelle = .Range(strNamen).Find(Target, lookat:=xlWhole)
         If rngZelle Is Nothing Then
            Application.EnableEvents = False
            .Cells(.Range(strNamen).Rows.Count + 1, .Range(strNamen).Column) = Target
            Application.EnableEvents = True
         End If
      End With
   End If
End Sub
https://www.herber.de/bbs/user/91752.xlsm


GrußformelBeverly's Excel - Inn


  

Betrifft: AW: Dropdownmenü Liste automatisch erweitern von: thomas.goebel@aol.com
Geschrieben am: 28.07.2014 15:11:30

Hallo Katrin,

vielen Dank für deine schnelle und kompetente Antwort.

Ich habe aus deinem Beispiel, welches du freundlicherweise angehängt hast entnommen, dass dieser Code auch genau das tut, was ich eigentlich erwarte.

Trotzdem verbleibt bei mir ein Problem:
Wenn ich den Code so übernehme, dann erhalte ich die Fehlermeldung "Run-time error 1004; Application defined or object defined error...ausgelöst in der Zeil:
.Cells(.Range(strNamen).Rows.Count + 1, .Range(strNamen).Column) = Target

Hast du eine ungefä#hre Ahnung, was da falsch läuft?

Bereich ist mitr H1:H500 angepasst worden


Vielen Dank für die Mühe im voraus

Thomas


  

Betrifft: AW: Dropdownmenü Liste automatisch erweitern von: Beverly
Geschrieben am: 28.07.2014 15:56:18

Hi Thomas,

hast du dir angeschaut, was als Quelle für die Gültigkeitsliste angegeben ist? Das ist ein definierter Name, der sich automatisch an die Anzahl an vorhandenen Daten anpasst - diesen Namen musst du in deiner Arbeitsmappe ebenfalls definieren.


GrußformelBeverly's Excel - Inn


 

Beiträge aus den Excel-Beispielen zum Thema "Dropdownmenü Liste automatisch erweitern"