Thema Datum  Von Nutzer Rating
Antwort
Rot Bereiche über 2 Listboxen kopieren
17.11.2014 11:11:49 Paulo Borges
NotSolved
17.11.2014 20:11:50 Gast81683
NotSolved
18.11.2014 14:06:39 Gast49573
Solved
18.11.2014 15:58:29 Gast44445
Solved
19.11.2014 22:57:20 Gast24084
Solved

Ansicht des Beitrags:
Von:
Paulo Borges
Datum:
17.11.2014 11:11:49
Views:
2336
Rating: Antwort:
  Ja
Thema:
Bereiche über 2 Listboxen kopieren
Hallo Freunde,
 
Ich versuche verzweifelt über 2 listboxen verschiedene Bereiche zu kopieren.
In eine Tabelle „Export“ sind 2 Hauptbereiche - Bereich A (A1:AI556) und Bereich B (AK1:BS556)
Diese Bereiche A & B sind jeweils in 15 (Max) Unterbereiche aufgeteilt wie Folgt
 
Bereich A                                        Bereich B
(A1:AI1) – Titelzeile                       (AK1:BS1) – Titelzeile
(A2:AI38) – Bereich 1a                 (AK2: BS38) – Bereich 1b
(A39:AI75) – Bereich 2a               (AK39: BS75) – Bereich 2b
(A76:AI112) – Bereich 3a             (AK76: BS112) – Bereich 3b
.....                                                     .....
(A520:AI556) – Bereich 15a        (AK520: BS556) – Bereich 15b
 
Jeweils in der ersten Zeile jedes Bereiches stehen die Hauptangaben von denen zwei Zellen (Spalte D & E) sowie (Spalte AN & AO) in 2 listboxen einlesen lasse.
Also Listbox1 – Bereich A und Listbox2 Bereich B, das einzige was ich geschafft habe.
 
Private Sub UserForm_Initialize()
Dim lZeile, lZeile1 As Long
    
With ListboxA 'Bereich A
    .ColumnCount = 2
    .ColumnWidths = "30 ; 100"
    .RowSource = ""
    .Clear
    ThisWorkbook.Worksheets("Export").Activate
    For lZeile = 2 To 556 Step 37
        If Range("D" & lZeile).Value <> "" Then
            ListboxA.AddItem " "
            ListboxA.List(.ListCount - 1, 0) = Range("D" & lZeile).Value
            ListboxA.List(.ListCount - 1, 1) = Range("E" & lZeile).Value
        End If
    Next lZeile
End With

With ListboxB 'Bereich B
    .ColumnCount = 2
    .ColumnWidths = "30 ; 100"
    .RowSource = ""
    .Clear
    ThisWorkbook.Worksheets("Export").Activate
    For lZeile1 = 2 To 556 Step 37
        If Range("AN" & lZeile1).Value <> "" Then
            ListboxB.AddItem " "
            ListboxB.List(.ListCount - 1, 0) = Range("AN" & lZeile1).Value
            ListboxB.List(.ListCount - 1, 1) = Range("AO" & lZeile1).Value
        End If
    Next lZeile1
End With

End Sub
Nun will ich über diese beiden Listboxen Daten von Bereich B - zu Bereich A kopieren,
beziehungsweise bei Auswahl von ListboxB er mir den dazugehörigen Bereich (z.b. Bereich 2c) in ListboxA Auswahl (z.b. Bereich 7a) Kopiert.
 
Private Sub CMD_ImportSel_Click()
Dim i As Long, bl As Boolean, j As Long
bl = False
    For i = 0 To Me.ListboxB.ListCount - 1
        If Me.ListboxB.Selected(i) = True Then
            For j = 0 To Me.ListboxA.ListCount - 1
                If Me.ListboxB.Column(0, i) = Me.ListboxA.Column(0, j) Then
                    bl = True
                    Exit For
                End If
            Next
            If bl = False Then
                Me.ListboxA.AddItem Me.ListboxB.Column(0, i)
            Else
                MsgBox "Field already added", vbInformation, "Note:"
            End If
        End If
    Next
End Sub
Beim Kopieren von ListboxB zu ListboxA schaffe ich nur, das er mir die erste spalte kopiert (fehlt die 2 spalte).
 
Wie kann ich dann, die Bezüge zwischen die Listboxen zu den Bereichen herstellen?
Ich habe über Select Case (index Listbox) gedacht kriege es aber nicht hin.
 
'Wie z.b. Auswahl Kopieren
Select Case (index ListboxB)
Case 0
Range(AK2: BS38).Copy
Case 1
Range(AK39: BS75).Copy
Case 2
Range(AK76: BS112).Copy
….
	…..
Case 14
Range(AK520: BS556).Copy
End Select

'Auswahl Einfügen
Select Case (index ListboxA)
Case 0
Range(A2:AI38). PasteSpecial Paste:=xlPasteValues
Case 1
Range(A39:AI75). PasteSpecial Paste:=xlPasteValues
Case 2
Range(A76:AI112). PasteSpecial Paste:=xlPasteValues
….
	…..
Case 14
Range(A520:AI556). PasteSpecial Paste:=xlPasteValues
End Select
Ich Hoffe mich einiger maßen verständlich gemacht zu haben und bedanke mich im Voraus für jede Hilfe.
 
Gruß Paulo

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Bereiche über 2 Listboxen kopieren
17.11.2014 11:11:49 Paulo Borges
NotSolved
17.11.2014 20:11:50 Gast81683
NotSolved
18.11.2014 14:06:39 Gast49573
Solved
18.11.2014 15:58:29 Gast44445
Solved
19.11.2014 22:57:20 Gast24084
Solved