PDA

Vollständige Version anzeigen : Dynamische Liste


Peter_1975
22.07.2014, 08:08
Hallo

Ich komme nicht mehr weiter.

Ich sollte in einer Liste eine Anzahl Zeilen einfügen können in Abhängigkeit davon, was ausgewählt wurde. Es können zwischen 5 und 10 Zeilen sein. Dabei sollte der Text, der unter diesen eingefügten Zeilen sich befindet immer den gleichen Abstand haben zum Eingefügten.

Anbei ein kurzes Beispiel. Wie gesagt ist es ein Beispiel, und nicht die Origingaldatei. Ich hoffe, dass meine Fragestellung einigermassen klar ist. Für jegliche Hilfe bin ich dankbar.


Gruss Peter

Beverly
22.07.2014, 08:24
Hi Peter,

benutze eine Gliederung, die du bei Bedarf ein oder ausblenden kannst.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

Peter_1975
22.07.2014, 14:57
Hallo

Danke für den Input. Wie kann ich denn eine Gliederung erstellen aufgrund von einer Auswahl?
Weisst du wie die Formel aussehen sollte?

Vielen Dank für dein Feedback.


Gruss Peter

Beverly
22.07.2014, 15:23
Hi Peter,

markiere die kompletten Zeilen 13 bis 17, gehe ins Register: Daten -> Befehlsgruppe: Gliederung -> DropDown: Gruppierung -> Schalter: Gruppieren...

Wenn du mehrere Gruppierungen erstellen willst, dann muss zwischen den einzelnen Gruppierungen immer mindestens 1 nicht mit gruppierte Zeile dazwischen liegen - andernfalls wird die Gruppierung auf den gesamten Zeilenbereich erweitert.

<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

Peter_1975
23.07.2014, 07:39
Hallo Beverly

Danke für das Beispiel.

Aber wie kann ich die Gliederung in Abhängigkeit steuern mit dem was ich unter Register "Zutaten" ausgewählt habe?

Zudem hab ich dann eine Menge an leeren Zeilen, wenn ich zum Beispiel nur "Salat" ausgewählt habe im Register "Zutaten".


Danke für eine Antwort.

Gruss Peter

Beverly
23.07.2014, 08:16
Hi Peter,

dann lässt es sich nur per VBA lösen. Ich würde außerdem nicht ein "x" von Hand eintragen, sondern dies ebenfalls per VBA - und zwar mit dem Doppelklick-Ereignis in Spalte D - lösen. Das Ganze sieht dann so aus

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim lngStart As Long
Dim lngZeile As Long
If Target.Column = 4 Then
If Target.Offset(0, -1) = "Ausgewählt:" Then
Cancel = True
With Worksheets("Rezept")
If Not IsError(Application.Match(Target.Offset(0, -3), .Columns(1), 0)) Then
lngStart = Application.Match(Target.Offset(0, -3), .Columns(1), 0)
lngZeile = .Cells(lngStart, 1).End(xlDown).Row
If Target = "x" Then
Target.ClearContents
.Range(.Cells(lngStart, 1), .Cells(lngZeile, 1)).EntireRow.Hidden = True
Else
Target = "x"
.Range(.Cells(lngStart, 1), .Cells(lngZeile, 1)).EntireRow.Hidden = False
End If
End If
End With
End If
End If
End Sub


<hr width="20%" align="left"><img src="http://excel-inn.de/images/grusz.gif" height=35" align="left" alt="Grußformel"><a href="http://excel-inn.de/"><img border="0" src="http://excel-inn.de/images/logo1.gif" height=35" align="middle" alt="Beverly's Excel - Inn"></a>

Peter_1975
25.07.2014, 05:59
Hallo Beverly

Danke für das VBA. Es scheinst so, dass es nur darüber geht.

Vielen Dank....passt alles.

Gruss Peter