Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1504to1508
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dropdown

Dropdown
25.07.2016 09:38:13
Olli
Guten Morgen Zusammen
Bräuchte mal eine kleine Unterstützung bei folgendem Problem.
Möchte gerne in Zelle B11 eine Dropdownliste zuweisen.
Habe dafür eine Routine geschrieben, die auch soweit funktioniert. Diese Routine möchte ich jedoch für weiter Zellen (E11,H11,K11...) und unterschiedlichen Dropdowns nutzen.
z.B.
Bei Zelle B11 soll Drop_a bei E11 soll Drop_b zugewiesen werden usw.....
Sub DropDown()
'Dropdownfelder
Drop_a = "=Zahlen"
Drop_b = "=Buchstaben"
Drop_c = "=Zahlen_Buchstaben"
Drop_d = "=Mix"
Drop_e = "=kleine_Buchstaben"
Drop_f = "=grosse_Buchstaben"
'Zellen
a = "B11"
b = "E11"
c = "H11"
d = "K11"
e = "N11"
F = "Q11"
'Austausch der Werte in der Routine
'Bei Range() soll a und bei Formular1:= Drop_a eingesetzt werden
'Bei dem nächsten Durchlauf b und Drop_b    usw.
With Range(a).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=Drop_a
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Dropdown
25.07.2016 10:23:07
baschti007
Hey Olli
So kannst du es mal versuchen =)
Sub Makro()
Dim Name
Dim i, y As Long
Dim wS As Worksheet
Dim start As Long
Namen = Array("=Zahlen", "=Buchstaben", "=Zahlen_Buchstaben") ' Hier deine anderen Namen  _
eintragen mit , Trennen
Set wS = Worksheets("Tabelle1")
start = 2 'Startet in Spalte B
For x = 0 To UBound(Namen)
With wS.Cells(11, x + start + y).Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=Namen(x)
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
y = y + 1
Next
End Sub

Anzeige
AW: Dropdown
25.07.2016 10:26:40
baschti007
Ohh setz mal y = y + 2 nicht y = y + 1
Gruß Basti
Ansatz ergänzt: Richte Dir ein Steuerblatt ein...
25.07.2016 10:43:02
Michael
Hallo beisammen!
Ich würde das genauso über ein Array lösen, wie Basti getan hat, allerdings würde ich das nicht direkt im Code erstellen - Du bist vermutlich flexibler, wenn Du Dir ein "Steuerblatt" einrichtest, also die Zuordnung von Zellen zu Dropdownlisten auf einem Blatt vornimmst - dieser Bereich kann dann problemlos in ein Array eingelesen werden; und so muss der Code nicht angepasst werden, wenn sich die Anzahl der Listen oder Zellen ändert.
Schema: https://www.herber.de/bbs/user/107218.xlsm
LG
Michael
Anzeige
Problem gelöst!!!!
25.07.2016 10:56:39
Olli
Habe ich korrigiert!!
Funktioniert einwandfrei
Danke Euch
Ansatz ergänzt: Richte Dir ein Steuerblatt ein...
25.07.2016 11:50:37
baschti007
Jaa du hast es schon schöner gemacht =) meins sieht immer so gewurschtelt aus ;)
Aber es funktioniert =D
https://www.herber.de/bbs/user/107219.xlsm

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige