Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
856to860
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
856to860
856to860
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

alle Zeilen kopieren

alle Zeilen kopieren
29.03.2007 19:39:00
Wolfgang
Hallo,
über den untenstehenden Code erreiche ich, dass aus den Tabellen 1 und 2 die beschriebenen Zeilen in Tabelle 3 kopiert werden. Meine Arbeitsmappe enthält oftmals eine unterschiedliche Anzahl an Tabellen.- Wie müßte ich den Code umstellen, wenn aus allen in der Mappe befindlichen Tabellenblättern die Zeilen -ab Zeile 2- (Zeile 1 ist jeweils Überschrift) in ein verdecktes Tabellenblatt "Temp" kopiert werden sollen und in der Folge dann alphabetisch -Spalte A- sortiert werden sollen? - Ausgespart werden müßten dabei die Tabellenblätter "Daten" und "Hinweise". Kann mir da jemand helfen? - Danke schon jetzt für die Rückmeldungen.
Herzliche Grüße
Wolfgang

Sub ZusammenFuehren()
Dim shTarget As Worksheet
Dim rngSourceA As Range, rngSourceB As Range
Dim intRow As Integer, intCounter As Integer, intCol
Application.ScreenUpdating = False
Set rngSourceA = Worksheets("Tabelle1").Range("A1").CurrentRegion
Set rngSourceB = Worksheets("Tabelle2").Range("A1").CurrentRegion
Set shTarget = Worksheets("Tabelle3")
intCol = rngSourceA.Columns.Count
If rngSourceB.Columns.Count > intCol Then
intCol = rngSourceB.Columns.Count
End If
For intCounter = 1 To intCol
shTarget.Cells(1, intCounter) = "Spalte" & intCounter
Next intCounter
shTarget.Rows(1).Font.Bold = True
rngSourceA.Range("A1").CurrentRegion.Copy shTarget.Range("A2")
intRow = shTarget.Cells(Rows.Count, 1).End(xlUp).Row + 1
rngSourceB.Range("A1").CurrentRegion.Copy shTarget.Cells(intRow, 1)
shTarget.Range("A1").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=shTarget.Cells(1, shTarget.UsedRange.Columns.Count + 1), _
Unique:=True
shTarget.Range(shTarget.Cells(1, 1), shTarget.Cells(1, intCol)). _
EntireColumn.Delete
shTarget.Columns.AutoFit
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: alle Zeilen kopieren
30.03.2007 20:51:00
Gerd
Hallo Wolfgang,
die Überschriften in "Temp" musst noch dazubasteln. Ich weis nicht, woher diese genommen werden sollen.

Sub test()
Dim rngQuelle() As Range, i As Integer, y As Integer, Wb As Workbook, wsZiel As Worksheet
Set Wb = ThisWorkbook
Set wsZiel = Wb.Worksheets("Temp")
ReDim rngQuelle(Wb.Worksheets.Count)
For i = 1 To Wb.Worksheets.Count
With Wb.Worksheets(i)
Select Case .Name
Case "Daten", "Hinweise", wsZiel.Name
Case Else
Set rngQuelle(y) = .Range("A2:" & .Cells.SpecialCells(xlCellTypeLastCell).Address)
y = y + 1
End Select
End With
Next
ReDim Preserve rngQuelle(y - 1)
For i = LBound(rngQuelle) To UBound(rngQuelle)
rngQuelle(i).Copy Destination:=wsZiel.Range("A65536").End(xlUp).Offset(1, 0)
Next
wsZiel.UsedRange.Sort key1:=wsZiel.Range("A2"), order1:=xlAscending, header:=xlYes
End Sub
Gruß
Gerd
Anzeige
AW: alle Zeilen kopieren
31.03.2007 07:50:42
Wolfgang
Hallo Gerd,
das funktioniert wunderbar. Herzlichen Dank dafür.
Gruß
Wolfgang

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige