Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1732to1736
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

Comboboxen voneinander abhängig

Comboboxen voneinander abhängig
08.01.2020 12:45:33
Jörg
Hallo Fachleute,
unten stehendes Makro hab ich aus dem Netz. Das funktioniert auch soweit.
Ich versuche nun , leider erfolglos, meine Combobox4 einzubinden.
Vielen Dank für Eure Hilfe
Gruß Jörg
Option Explicit
' ************************************************************************************************
' Autor/en: http://www.online-vba.de
- Marc Wershoven
' Verwendung der Quelltexte auf eigene Gefahr!
' Es gelten die Nutzungsbedingungen von www.online-vba.de!
' Original-Quelltext: www.online-vba.de/vba_abhcomboboxen.php
' ************************************************************************************************
Const lSTARTZEILE As Long = 2
Private Sub UserForm_Initialize()
Call FillComboBox1
End Sub

Private Sub FillComboBox1()
Call MWFillComboBoxFromTableColumn(Tabelle1, 1, ComboBox1)
If ComboBox1.ListCount >= 1 Then ComboBox1.ListIndex = 0
End Sub

'Ereignisroutine, wenn sich ComboBox1 verändert -> ComboBox2 und 3 neu füllen

Private Sub ComboBox1_Change()
ComboBox3.Clear
ComboBox2.Clear
If ComboBox1.ListIndex = -1 Then Exit Sub
Call MWFillComboBoxFromTableColumn(Tabelle1, 2, ComboBox2, 1, ComboBox1.Text)
If ComboBox2.ListCount >= 1 Then ComboBox2.ListIndex = 0
End Sub

'Ereignisroutine, wenn sich ComboBox2 verändert -> ComboBox3 neu füllen

Private Sub ComboBox2_Change()
ComboBox3.Clear
If ComboBox2.ListIndex = -1 Then Exit Sub
Call MWFillComboBoxFromTableColumn(Tabelle1, 3, ComboBox3, 1, ComboBox1.Text, 2, ComboBox2. _
_
Text)
If ComboBox3.ListCount >= 1 Then ComboBox3.ListIndex = 0
End Sub

Private Sub MWFillComboBoxFromTableColumn(ByRef oSheet As Object, _
ByVal lColumn As Long, ByRef oComboBox As Object, _
Optional ByVal lColBedingung1 As Long = 0, Optional ByVal sBedingung1 As  _
String = "", _
Optional ByVal lColBedingung2 As Long = 0, Optional ByVal sBedingung2 As  _
String = "")
Dim z As Long
Dim zMax As Long
Dim bFlag As Boolean
oComboBox.Clear
zMax = oSheet.UsedRange.Row + oSheet.UsedRange.Rows.Count - 1
For z = lSTARTZEILE To zMax
If Trim(CStr(oSheet.Cells(z, lColumn).Value))  "" Then
bFlag = True
If lColBedingung1  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung1))))  LCase(Trim( _
sBedingung1)) Then
bFlag = False
End If
End If
If lColBedingung2  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung2))))  LCase(Trim( _
sBedingung2)) Then
bFlag = False
End If
End If
If bFlag = True Then
Call MWFillNonDuplicatesToComboBox(oComboBox, oSheet.Cells(z, lColumn).Value)
End If
End If
Next z
End Sub

Private Sub MWFillNonDuplicatesToComboBox(ByRef oComboBox As Object, ByVal sAddText As String)
Dim i As Long
Dim bFlag As Boolean
If oComboBox.ListCount = 0 Then
oComboBox.AddItem sAddText
Else
bFlag = False
For i = 0 To oComboBox.ListCount - 1
If LCase(Trim(CStr(oComboBox.List(i)))) = LCase(Trim(CStr(sAddText))) Then
bFlag = True
Exit For
End If
Next i
If bFlag = False Then
oComboBox.AddItem sAddText
End If
End If
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Comboboxen voneinander abhängig
08.01.2020 19:41:53
Matthias
Moin!
Hier mal angepasst.
Const lSTARTZEILE As Long = 2
Private Sub UserForm_Initialize()
Call FillComboBox1
End Sub
Private Sub FillComboBox1()
Call MWFillComboBoxFromTableColumn(Tabelle1, 1, ComboBox1)
If ComboBox1.ListCount >= 1 Then ComboBox1.ListIndex = 0
End Sub
'Ereignisroutine, wenn sich ComboBox1 verändert -> ComboBox2 und 3 neu füllen
Private Sub ComboBox1_Change()
ComboBox4.Clear
ComboBox3.Clear
ComboBox2.Clear
If ComboBox1.ListIndex = -1 Then Exit Sub
Call MWFillComboBoxFromTableColumn(Tabelle1, 2, ComboBox2, 1, ComboBox1.Text)
If ComboBox2.ListCount >= 1 Then ComboBox2.ListIndex = 0
End Sub
'Ereignisroutine, wenn sich ComboBox2 verändert -> ComboBox3 neu füllen
Private Sub ComboBox2_Change()
ComboBox4.Clear
ComboBox3.Clear
If ComboBox2.ListIndex = -1 Then Exit Sub
Call MWFillComboBoxFromTableColumn(Tabelle1, 3, ComboBox3, 1, ComboBox1.Text, 2, ComboBox2. _
Text)
If ComboBox3.ListCount >= 1 Then ComboBox3.ListIndex = 0
End Sub
Private Sub ComboBox3_Change()
ComboBox4.Clear
If ComboBox3.ListIndex = -1 Then Exit Sub
Call MWFillComboBoxFromTableColumn(Tabelle1, 4, ComboBox4, 1, ComboBox1.Text, 2, ComboBox2. _
Text, 3, ComboBox3.Text)
If ComboBox4.ListCount >= 1 Then ComboBox4.ListIndex = 0
End Sub
Private Sub MWFillComboBoxFromTableColumn(ByRef oSheet As Object, _
ByVal lColumn As Long, ByRef oComboBox As Object, _
Optional ByVal lColBedingung1 As Long = 0, Optional ByVal sBedingung1 As  _
String = "", _
Optional ByVal lColBedingung2 As Long = 0, Optional ByVal sBedingung2 As  _
String = "", _
Optional ByVal lColBedingung3 As Long = 0, Optional ByVal sBedingung3 As  _
String = "")
Dim z As Long
Dim zMax As Long
Dim bFlag As Boolean
oComboBox.Clear
zMax = oSheet.UsedRange.Row + oSheet.UsedRange.Rows.Count - 1
For z = lSTARTZEILE To zMax
If Trim(CStr(oSheet.Cells(z, lColumn).Value))  "" Then
bFlag = True
If lColBedingung1  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung1))))  LCase(Trim( _
sBedingung1)) Then
bFlag = False
End If
End If
If lColBedingung2  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung2))))  LCase(Trim( _
sBedingung2)) Then
bFlag = False
End If
End If
If lColBedingung3  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung3))))  LCase(Trim( _
sBedingung3)) Then
bFlag = False
End If
End If
If bFlag = True Then
Call MWFillNonDuplicatesToComboBox(oComboBox, oSheet.Cells(z, lColumn).Value)
End If
End If
Next z
End Sub
Private Sub MWFillNonDuplicatesToComboBox(ByRef oComboBox As Object, ByVal sAddText As String)
Dim i As Long
Dim bFlag As Boolean
If oComboBox.ListCount = 0 Then
oComboBox.AddItem sAddText
Else
bFlag = False
For i = 0 To oComboBox.ListCount - 1
If LCase(Trim(CStr(oComboBox.List(i)))) = LCase(Trim(CStr(sAddText))) Then
bFlag = True
Exit For
End If
Next i
If bFlag = False Then
oComboBox.AddItem sAddText
End If
End If
End Sub
VG
Anzeige
AW: Comboboxen voneinander abhängig
08.01.2020 23:47:11
Jörg
Hallo Matthias,
vielen, vielen Dank. Klappt wunderbar.
Eine Frage hätte ich noch zum nachfolgendem Codeschnipsel.
Ginge das auch mit einer Schleife?

Private Sub FillBox1()
Call MWFillBoxFromTableColumn(Tabelle3, 4, Box1)
If Box1.ListCount >= 1 Then Box1.ListIndex = 0
Call MWFillBoxFromTableColumn(Tabelle3, 5, Box5)
If Box5.ListCount >= 1 Then Box5.ListIndex = 0
Call MWFillBoxFromTableColumn(Tabelle3, 6, Box6)
If Box6.ListCount >= 1 Then Box6.ListIndex = 0
Call MWFillBoxFromTableColumn(Tabelle3, 7, Box7)
If Box7.ListCount >= 1 Then Box7.ListIndex = 0
Call MWFillBoxFromTableColumn(Tabelle3, 8, Box8)
If Box8.ListCount >= 1 Then Box8.ListIndex = 0
End Sub

Vielen Dank schon mal.
VG Jörg
Anzeige
AW: Comboboxen voneinander abhängig
09.01.2020 09:30:39
Matthias
Moin!
Also so müsste der Code in einer Schleife aussehen. Da der index der Comboboxen nicht folgend ist, habe ich den ersten Wert extra geschrieben. Du musst nur mal schauen, wie deine Comboboxen genau heißen. Anfangs hattest du dort mal Combobox stehen. Hier nur noch Box. Da müsstest du im COde mal noch den Namen anpassen. Einfach das Combobox durch box ersetzen, wenn der Name anders ist.
Private Sub FillBox1()
Dim i As Long
Call MWFillBoxFromTableColumn(Tabelle3, 4, Box1)
If Box1.ListCount >= 1 Then Box1.ListIndex = 0
For i = 5 To 8  'bitte nich schauen wie die CB genau heißen. Anfangs war es Combobox, hier  _
hattest du nur noch box?
Call MWFillBoxFromTableColumn(Tabelle3, i, Me.Controls("Combobox" & i))
If Me.Controls("Combobox" & i).ListCount >= 1 Then Me.Controls("Combobox" & i).ListIndex =  _
0
Next
End Sub

VG
Anzeige
AW: Comboboxen voneinander abhängig
09.01.2020 11:05:52
Jörg
Moin Matthias,
ich danke Dir. Es paßt. Ja, Du hast recht. Bei mir heißen die CBn nur "Box". (war bei der Erstellung der Userform "blind" einem Beispiel aus dem Netz gefolgt). Ist aber insofern kein Problem, da ich das im gesamten Code angepaßt hatte.
Eine Frage hätte ich noch. Hoffe, ich bin nicht ausverschämt bei sovielen Anliegen.
Folgendes:
Die betreffende UF2 dient auch zur kompletten Neueingabe von Daten.
Problem:
Wenn ich in Box1 einen Begriff eingebe, der nicht in der Liste (Spalte) steht, ist ein Zugriff auf Box2-4 nicht mehr möglich. Wegen der Bedingungen, logisch.
Frage:
Ließen sich die Bedingungen "ausschalten", wenn Inhalt der Box1 = "" oder neu ist?
Mein Versuch (s. Code)funktioniert nur im Prinzip.
D.h., Die Box1-Box4 lesen die Spalten in umgekehrter Reihenfolge aus.
Richtig wäre: Box1-Spalte4;Box2-Spalte3;Box3-Spalte2;Box4-Spalte1
Die Box5-8 sind o.k.
'Ereignisroutine, wenn sich ComboBox1 verändert -> ComboBox2 und 3 neu füllen
Private Sub Box1_Change()
Dim oDic As Object, meAr
Dim A As Long
Dim S As Long
If Box1 = "" Then
For S = 1 To 8 'Variable für Spalten A bis H
Controls("Box" & S).RowSource = ""
Set oDic = CreateObject("Scripting.Dictionary") '
With Sheets("Arten")
meAr = .Range(.Cells(1, S), .Cells(.Rows.Count, S).End(xlUp))
End With
For A = 1 To UBound(meAr)
oDic(meAr(A, 1)) = 0
Next
Controls("Box" & S).List = oDic.keys   'Box1, Box2, Box3, Box4-Box8
oDic.RemoveAll
Next
Set oDic = Nothing
Else
Box4.Clear
Box3.Clear
Box2.Clear
If Box1.ListIndex = -1 Then Exit Sub
Call MWFillBoxFromTableColumn(Tabelle3, 3, Box2, 4, Box1.Text)
If Box2.ListCount >= 1 Then Box2.ListIndex = 0
End If
End Sub

Ich würde mich sehr freuen, wenn Du mir auch hier weiterhelfen könntest.
VG Jörg
Anzeige
AW: Comboboxen voneinander abhängig
09.01.2020 13:21:34
Matthias
Moin!
Grundsätzlich ist fast alles möglich. Ich weiß grad nicht genau, was du machen willst. Die Boxen 2 bis 4 sind nicht wegen der Bedingungen leer (das würde aber auch beim Codedurchlauf stimmen) sondern da sie in der CB1_Change geleert werden und beim Eintragen eines neuen Wertes dein listindex bei -1 landet und damit die Ladeprozedur für die anderen Boxen abbricht.
Umschreibe bitte nochmal, was genau bei einer manuellen Eingabe in Box1 passieren soll! Sollen die anderen Boxen dann alle Werte aus den entsprechenden Spalten enthalten? Wenn ja, kann man das auch basteln. Dazu würde ich aber jetzt nicht die Change Prozedur so aufblähen. Setzte bei leer bzw. neu lieber eine Variable als Flag und ergänze die unten in der sub beim letzten if. Da werden dann auch die doppelten rausgenommen - was du jetzt mit dem dictionary machst. Sag nochmal was werden soll, dann bastel ich dir das schnell rein.
VG
Anzeige
AW: Comboboxen voneinander abhängig
09.01.2020 14:30:04
Jörg
Hallo Matthias,
Zur Erläuterung:
Bei der manuellen Eingabe in Box1 sollen die anderen Boxen alle Werte aus den entsprechenden Spalten zur freien Auswahl enthalten. Aber auch hier sollte gegebenenfalls eine manuelle Eingabe möglich sein.
Ich setz hier nochmal den kompletten Code rein (wegen Änderung Combobox in Box).
Bitte frage zurück, falls ich mein Anliegen nicht deutlich machen konnte.
Auf jeden Fall schon jetzt ein großes Danke.
VG Jörg
P.S. Ist es eigentlich grundsätzlich nicht möglich, Text aus einer anderen Quelle in eine CB zu kopieren?
Option Explicit
Const lSTARTZEILE As Long = 2
Private Sub UserForm_Initialize()
Call FillBox1
End Sub
Private Sub FillBox1()
Dim i As Long
Call MWFillBoxFromTableColumn(Tabelle3, 4, Box1)
If Box1.ListCount >= 1 Then Box1.ListIndex = 0
For i = 5 To 8  'bitte nich schauen wie die CB genau heißen. Anfangs war es Combobox, hier _
hattest du nur noch box?
Call MWFillBoxFromTableColumn(Tabelle3, i, Me.Controls("Box" & i))
If Me.Controls("Box" & i).ListCount >= 1 Then Me.Controls("Box" & i).ListIndex = -1
Next
End Sub
'Ereignisroutine, wenn sich ComboBox1 verändert -> ComboBox2 und 3 neu füllen
Private Sub Box1_Change()
Box4.Clear
Box3.Clear
Box2.Clear
If Box1.ListIndex = -1 Then Exit Sub
Call MWFillBoxFromTableColumn(Tabelle3, 3, Box2, 4, Box1.Text)
If Box2.ListCount >= 1 Then Box2.ListIndex = 0
End Sub
'Ereignisroutine, wenn sich ComboBox2 verändert -> ComboBox3 neu füllen
Private Sub Box2_Change()
Box4.Clear
Box3.Clear
If Box2.ListIndex = -1 Then Exit Sub
Call MWFillBoxFromTableColumn(Tabelle3, 2, Box3, 4, Box1.Text, 3, Box2. _
Text)
If Box3.ListCount >= 1 Then Box3.ListIndex = 0
End Sub
Private Sub Box3_Change()
Box4.Clear
If Box3.ListIndex = -1 Then Exit Sub
Call MWFillBoxFromTableColumn(Tabelle3, 1, Box4, 4, Box1.Text, 3, Box2. _
Text, 2, Box3.Text)
If Box4.ListCount >= 1 Then Box4.ListIndex = 0
End Sub
Private Sub MWFillBoxFromTableColumn(ByRef oSheet As Object, _
ByVal lColumn As Long, ByRef oBox As Object, _
Optional ByVal lColBedingung1 As Long = 0, Optional ByVal sBedingung1 As _
String = "", _
Optional ByVal lColBedingung2 As Long = 0, Optional ByVal sBedingung2 As _
String = "", _
Optional ByVal lColBedingung3 As Long = 0, Optional ByVal sBedingung3 As _
String = "")
Dim z As Long
Dim zMax As Long
Dim bFlag As Boolean
oBox.Clear
zMax = oSheet.UsedRange.Row + oSheet.UsedRange.Rows.Count - 1
For z = lSTARTZEILE To zMax
If Trim(CStr(oSheet.Cells(z, lColumn).Value))  "" Then
bFlag = True
If lColBedingung1  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung1))))  LCase(Trim( _
sBedingung1)) Then
bFlag = False
End If
End If
If lColBedingung2  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung2))))  LCase(Trim( _
sBedingung2)) Then
bFlag = False
End If
End If
If lColBedingung3  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung3))))  LCase(Trim( _
sBedingung3)) Then
bFlag = False
End If
End If
If bFlag = True Then
Call MWFillNonDuplicatesToBox(oBox, oSheet.Cells(z, lColumn).Value)
End If
End If
Next z
End Sub
Private Sub MWFillNonDuplicatesToBox(ByRef oBox As Object, ByVal sAddText As String)
Dim i As Long
Dim bFlag As Boolean
If oBox.ListCount = 0 Then
oBox.AddItem sAddText
Else
bFlag = False
For i = 0 To oBox.ListCount - 1
If LCase(Trim(CStr(oBox.List(i)))) = LCase(Trim(CStr(sAddText))) Then
bFlag = True
Exit For
End If
Next i
If bFlag = False Then
oBox.AddItem sAddText
End If
End If
End Sub

Anzeige
AW: Comboboxen voneinander abhängig
09.01.2020 18:13:06
Matthias
Moin!
Hier mal der Code angepasst zurück. Damit solltest du in einer der 4 Boxen den Inhalt selber eintragen und die folgenden Boxen (bis zur 4ten), haben dann alle Elemente und können auch frei betückt werden.
Was meinst du mit Text aus einer anderen Quelle in die CB kopieren. Die Elemten für die CB können eigentlich von überall herkommen - müssen halt nur eingelesen werden. Hast du da einen konkreten Anlaß für die Frage?
Option Explicit
Const lSTARTZEILE As Long = 2
Dim lFlag As Boolean
Private Sub UserForm_Initialize()
Call FillBox1
End Sub
Private Sub FillBox1()
Dim i As Long
Call MWFillBoxFromTableColumn(Tabelle3, 4, Box1)
If Box1.ListCount >= 1 Then Box1.ListIndex = 0
For i = 5 To 8  'bitte nich schauen wie die CB genau heißen. Anfangs war es Combobox, hier _
hattest du nur noch box?
Call MWFillBoxFromTableColumn(Tabelle3, i, Me.Controls("Box" & i))
If Me.Controls("Box" & i).ListCount >= 1 Then Me.Controls("Box" & i).ListIndex = -1
Next
End Sub
'Ereignisroutine, wenn sich ComboBox1 verändert -> ComboBox2 und 3 neu füllen
Private Sub Box1_Change()
Box4.Clear
Box3.Clear
Box2.Clear
Call MWFillBoxFromTableColumn(Tabelle3, 3, Box2, 4, Box1.Text)
If Box2.ListCount >= 1 Then Box2.ListIndex = 0
End Sub
'Ereignisroutine, wenn sich ComboBox2 verändert -> ComboBox3 neu füllen
Private Sub Box2_Change()
Box4.Clear
Box3.Clear
Call MWFillBoxFromTableColumn(Tabelle3, 2, Box3, 4, Box1.Text, 3, Box2. _
Text)
If Box3.ListCount >= 1 Then Box3.ListIndex = 0
End Sub
Private Sub Box3_Change()
Box4.Clear
Call MWFillBoxFromTableColumn(Tabelle3, 1, Box4, 4, Box1.Text, 3, Box2. _
Text, 2, Box3.Text)
If Box4.ListCount >= 1 Then Box4.ListIndex = 0
lFlag = False
End Sub
Private Sub MWFillBoxFromTableColumn(ByRef oSheet As Object, _
ByVal lColumn As Long, ByRef oBox As Object, _
Optional ByVal lColBedingung1 As Long = 0, Optional ByVal sBedingung1 As _
String = "", _
Optional ByVal lColBedingung2 As Long = 0, Optional ByVal sBedingung2 As _
String = "", _
Optional ByVal lColBedingung3 As Long = 0, Optional ByVal sBedingung3 As _
String = "")
Dim z As Long
Dim zMax As Long
Dim bFlag As Boolean
For z = 1 To 4
If Me.Controls("Box" & z).Name = oBox.Name Then
Exit For
Else
If Me.Controls("Box" & z).ListIndex = -1 Or Me.Controls("Box" & z) = "" Then lFlag = _
True
End If
Next
oBox.Clear
zMax = oSheet.UsedRange.Row + oSheet.UsedRange.Rows.Count - 1
For z = lSTARTZEILE To zMax
If Trim(CStr(oSheet.Cells(z, lColumn).Value))  "" Then
bFlag = True
If lColBedingung1  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung1))))  LCase(Trim( _
sBedingung1)) Then
bFlag = False
End If
End If
If lColBedingung2  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung2))))  LCase(Trim( _
sBedingung2)) Then
bFlag = False
End If
End If
If lColBedingung3  0 Then
If LCase(Trim(CStr(oSheet.Cells(z, lColBedingung3))))  LCase(Trim( _
sBedingung3)) Then
bFlag = False
End If
End If
If bFlag = True Or lFlag = True Then
Call MWFillNonDuplicatesToBox(oBox, oSheet.Cells(z, lColumn).Value)
End If
End If
Next z
End Sub
Private Sub MWFillNonDuplicatesToBox(ByRef oBox As Object, ByVal sAddText As String)
Dim i As Long
Dim bFlag As Boolean
If oBox.ListCount = 0 Then
oBox.AddItem sAddText
Else
bFlag = False
For i = 0 To oBox.ListCount - 1
If LCase(Trim(CStr(oBox.List(i)))) = LCase(Trim(CStr(sAddText))) Then
bFlag = True
Exit For
End If
Next i
If bFlag = False Then
oBox.AddItem sAddText
End If
End If
End Sub
VG
Anzeige
AW: Comboboxen voneinander abhängig [GELÖST]
10.01.2020 11:55:58
Jörg
Hallo Matthias,
ich finde gar nicht die richtigen Worte, um mich angemessen bei Dir für Deine Hlife zu bedanken.
Es läuft, wie ich es mir vorgestellt habe.
Der Anlaß meiner "Frage" ist eher profan.
In die Boxen trage ich wissenschaftliche Artnamen (Schmetterlinge, Wildbienen etc.)ein. Bin da ehrenamtlich unterwegs. Nun sind mir diese Namen nicht so geläufig, schon gar nicht die korrekte Schreibweise. So wäre es einfacher, ich kopiere diese Namen (z.Bsp. aus Lepiforum.de)und füge diese in die Box ein. Aber gut. Nicht so wichtig.
Also nochmals vielen Dank.
Irgendwann werd ich sicher wieder Hilfe benötigen. Bis dahin wünsche ich Dir eine gute Zeit.
VG Jörg
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige