Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 14:00:05
Herbert
Hallo Forum
Ich habe eine Userform mit zwei ListBoxen. In der ersten ListBox lese ich die Daten aus den Spalten P bis AO (ein ganzer Datensatz) ein, mit Doppelklick wird dieser in die zweite Listbox übernommen (auch mehrere) und mit Klick auf eine Schaltfläche in eine andere Mappe eingetragen.
In der neuen Mappe brauche die Daten der Spalten P bis Y in den Spalten B bis K - das funktioniert.
Jetzt mein Problem:
Wie muß ich den Code ergänzen um den Inhalt der Spalte AO in die Spalte A
zu bekommen?
Danke an alle, die sich das mal anschauen
Gruß Herbert
Option Explicit

Private Sub cmdEintragen_Click()
Dim iRow As Integer, iRowL As Integer, iCol As Integer
ThisWorkbook.Worksheets("ENBS").Activate
iRowL = Cells(Rows.Count, 2).End(xlUp).Row + 1
For iRow = 0 To lstENBS.ListCount - 1
For iCol = 0 To 9
Cells(iRowL + iRow, iCol + 2) = lstENBS.List(iRow, iCol)
Next iCol
Next iRow
lstENBS.Clear
End Sub



Private Sub cmdAbbrechen_Click()
Unload Me
End Sub



Private Sub lstENBS_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
lstENBS.RemoveItem lstENBS.ListIndex
End Sub



Private Sub lstSBL_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim iCounter As Integer
lstENBS.AddItem
For iCounter = 0 To 9
If iCounter 



Private Sub UserForm_Initialize()
Dim iRowL As Integer
iRowL = Cells(Rows.Count, 1).End(xlUp).Row
lstSBL.List = Range( _
Cells(2, 16), Cells(iRowL, 37)).Value
lstSBL.ColumnWidths = "22;22;60"
lstENBS.ColumnWidths = "22;22;60"
End Sub


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

Betreff
Datum
Anwender
Anzeige
AW: Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 16:21:53
ramses
Hallo
am einfachsten
Columns("AO:AO").Cut
Columns("A:A").Insert Shift:=xlToRight
Gruss Rainer
AW: Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 16:31:59
Herbert
Hallo Rainer
Danke für die Antwort, aber das ist nicht das was ich suche. Ich möchte nicht die ganze Spalte in die neue Mappe einfügen, sondern in der jeweiligen Zeile eines Datensatzes steht in der Spalte AO eine Angabe, die ich in der anderen Mappe in der Spalte A brauche.
Beispiel: In Zeile 15 stehen in den Zellen P15 bis Y15 die Angaben Name, Vorname, Adresse, usw. und in der Zelle AO15 eine Angabe, die in der anderen Mappe in die Spalte A geschrieben werden muß, gefolgt vom Datensatz der jeweiligen Person.
Ich hoffe, es ist einigermaßen verständlich, was ich suche.
Gruß Herbert
Gruß Herbert
Anzeige
Sei etwas flexibel...
16.06.2009 16:36:31
Ramses
Hallo
Wenn du schon von einer Mappe in die andere kopieren kannst, dann bau eine Schleife und damit durch die Spalte AO und schreib die Werte in Spalte A
Wo ist das Problem
Gruss Rainer
AW: Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 16:39:55
fcs
Hallo Herbert,
die Prozedur zum EIntragen müßte ungefähr folgendermaßen aussehen.
Gruß
Franz

Private Sub cmdEintragen_Click()
Dim iRow As Integer, iRowL As Integer, iCol As Integer
ThisWorkbook.Worksheets("ENBS").Activate
iRowL = Cells(Rows.Count, 2).End(xlUp).Row + 1
For iRow = 0 To lstENBS.ListCount - 1
'in Spalte A Wert aus Spalte AO eintragen
Cells(iRowL + iRow, 1) = lstENBS.List(iRow, 21) 'Nummer der Spalte _
in Listbox für Wert aus AO ggf anpassen
'in Spalte B bis K Werte aus Spalten 1 bis 10 der Listbox eintragen
For iCol = 0 To 9
Cells(iRowL + iRow, iCol + 2) = lstENBS.List(iRow, iCol)
Next iCol
Next iRow
lstENBS.Clear
End Sub


Anzeige
AW: Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 17:16:42
Herbert
Hallo Franz
Danke für die Antwort, klappt nicht bekomme einen Laufzeitfehler, da mehr als 10 Spalten angesprochen werden.
Gruß Herbert
AW: Listboxinhalt Spalten vertauscht ausgeben
16.06.2009 22:08:31
Gerd
Hallo Herbert,
klappt nicht bekomme einen Laufzeitfehler, da mehr als 10 Spalten angesprochen werden.
Da klappt wohl deine Listboxfüllung nicht. Fülle diese über die List-Eigenschaft aus einem Array.
Gruß Gerd
AW: Listboxinhalt Spalten vertauscht ausgeben
17.06.2009 06:11:43
Herbert
Hallo Gerd
das ist ja das Problem, in einer gebundenen Listbox kannst Du nur max. 10 Spalten füllen, hab ich aus der Recherche ;-(
Gruß Herbert
AW: Listboxinhalt Spalten vertauscht ausgeben
17.06.2009 10:33:46
Tino
Hallo,
vertausche doch einfach die Spalten nachdem Du sie in die Tabelle geschrieben hast.
Beiepiel:

Option Explicit
Sub Nach_Ausgabe()
Dim Spalte_A, Spalte_AO
Dim Bereich As Range
Set Bereich = Range("A1", Cells(Cells.SpecialCells(xlCellTypeLastCell).Row, 41))
Spalte_A = Bereich.Columns(1) 'Daten Merken aus Spalte A
Spalte_AO = Bereich.Columns(41) 'Daten Merken aus Spalte AO
Bereich.Columns(1) = Spalte_AO 'Spalte AO nach A
Bereich.Columns(41) = Spalte_A 'Spalte A nach AO
Erase Spalte_A: Erase Spalte_AO: Set Bereich = Nothing
End Sub


Gruß Tino

Anzeige

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige