Anzeige
Archiv - Navigation
612to616
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
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kombifeld Liste zuweisen

Kombifeld Liste zuweisen
18.05.2005 17:42:18
daniel
Hallo Leute,
nachdem hier mein erstes Problem wunderbar gelöst wurde, wage ich es nun eine weitere Frage zu stellen.
For i = 1 To auswahl
ActiveSheet.DropDowns.Add(329.25, 60, 158.25, 32.25).Select
With Selection
.ListFillRange = "mat i" ---?---
.LinkedCell = "$m" & i
.DropDownLines = 8
.Display3DShading = False
End With
Und zwar möchte ich es schaffen, dass ich mehreren beliebigen Listen mit Namen versehe (z.b. hier "mat")die durchnummeriert sind (mat1, mat2 ...). Diese Listen sollen dann in Abhängigkeit von i dem "listfillrange" zugeführt werden.
Zur Verdeutlichung, wenn i=2 soll die Liste mat2 im dropdown menü erscheinen.
Problematisch ist für mich die Namenserstellung und wie ich die Variable i da rein bringe. Wäre toll wenn wieder jemand einen Tipp für mich hätte.
Vielen Dank
Daniel

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

Betreff
Datum
Anwender
Anzeige
AW: Kombifeld Liste zuweisen
hhhhh

Sub CreateList()
Dim i, auswahl, ListB
auswahl = 2
For i = 1 To auswahl
Set ListB = ActiveSheet.Shapes.AddFormControl(xlDropDown, 329.25, 60, 158.25, 32.25)
' Set ListB = ActiveSheet.DropDowns.Add(329.25, 60, 158.25, 32.25)
With ListB.ControlFormat
' man muss die Bereiche mat1, mat2 usw. schon definiert haben ...
.ListFillRange = "mat" & VBA.CStr(i) ' "a" & VBA.CStr(i) & ":" & "a" & VBA.CStr(i + 10)
.LinkedCell = "a" & VBA.CStr(i)
.DropDownLines = 10
End With
' ListB.Shadow = False
Next i
End Sub

AW: Kombifeld Liste zuweisen
18.05.2005 18:46:14
daniel
Hallo hhhh,
schonmal danke für die schnelle Antwort.
klar, dass ich die Listen noch definiere,
bin mir noch ein bißchen unschlüssig über folgende Zeile:
.ListFillRange = "mat" & VBA.CStr(i) ' "a" & VBA.CStr(i) & ":" & "a" & VBA.CStr(i + 10)
Gruß
Daniel
Anzeige
AW: Kombifeld Liste zuweisen
hhhhh
z.B : i = 1
.ListFillRange = "mat" & VBA.CStr(i) :: "mat1" (muss aber schon definiert sein ...)
.ListFillRange = "a" & VBA.CStr(i) & ":" & "a" & VBA.CStr(i + 10) :: "a1:a11"
AW: Kombifeld Liste zuweisen
18.05.2005 19:00:38
daniel
Ok, danke.
Und angenommen ich möchte jetzt die LinkedCell als maßgebende Variable definieren.
Ich wähle also mit dem DropDown aus, die LinkedCell setzt sich auf 2 und in einem nachgeschalteten DropDown soll dann mat 2 auftauchen.
D.h. auswahl = LinkedCell ?
AW: Kombifeld Liste zuweisen
Dan
Hallo,
die LinkCell Property ist Read/write String, z.B. "a1", oder "d15" ...
(ich verstehe Dein Problem wahrscheinlich nicht richtig) ...
wenn Du eine massgebende Variable als LinkedCell brauchst, dann koennte es dies sein :
Sub CreateList()
Dim i, auswahl, ListB, Linked_Cell

Set Linked_Cell = ActiveSheet.Range("a1")

auswahl = ...

For i = 1 To auswahl
Set ListB = ActiveSheet.Shapes.AddFormControl(xlDropDown, 329.25, 60, 158.25, 32.25)

With ListB.ControlFormat
' man muss die Bereiche mat1, mat2 usw. schon definiert haben ...
.ListFillRange = "mat" & VBA.CStr(i)
.LinkedCell = Linked_Cell.Address
- in der Variable Linked_Cell hast Du jetzt eine Referentz auf die LinkedCell ...
Gruss Dan.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige