Daten zusammenfassen
#1
Hallo in die Excel-Runde,

ich habe eine Excel-Liste mit 17 Tabellen-Blätter. Für eine Auswertung möchte ich 10 Tabellen-Blätter möglichst über einen VBA-Code zu einem Tabellenblatt zusammenfassen. Der Kopf der Auswertung ist definiert und fest. Ich benötige daher von den 10 Tabellen-Blätter nur die reinen Daten (die Anordnung ist bei allen gleich).  Im Internet gibt es paar Beispiele, jedoch komme ich nicht weiter. Hat jemand eventuell mal das gleiche Problem gehabt und eine lösung?


Viele Grüße
Top
#2
Hallo Phillipp,
Sub Phillipp()
Dim i As Long, lr As Long
If Not Sheets(1).Name = "Gesamt" Then
  Sheets.Add before:=Sheets(1)
  Sheets(1).Name = "Gesamt"
Else
   Sheets("Gesamt").Cells = ""
End If

Sheets("Gesamt").Rows(1).Value = Sheets(4).Rows(1).Value
For i = 2 To Sheets.Count
  lr = Sheets("Gesamt").Cells(Rows.Count, 1).End(xlUp).Row + 1
  With Sheets(i).UsedRange
    Sheets("Gesamt").Cells(lr, 1).Resize(.Rows.Count - 1, .Columns.Count).Value = _
      .Resize(.Rows.Count - 1).Offset(1).Value
  End With
Next i
End Sub
Gruß Uwe
Top
#3
Hallo Uwe,

habe mal eine Testdatei im Anhang gepackt. dort klappt es. Über die "Daten" weise zu zu, welche Tabellenblätter ich auswerten will.
in meiner richtigen umfangreichen Datei, möchte ich ab Zeile A4 bis W4 und nach unten offen ohne kopf die Daten zusammenfassen.


Angehängte Dateien
.xls   Test.xls (Größe: 74,5 KB / Downloads: 3)
Top
#4
Ich versuche es nochmal.

ich habe eine excel-liste mit mehrenen Excel-Blätter mit verschiedenen daten, jedoch ist die anordnung im tabellenkopf immer gleich. Ich möchte von meinen 17 excelblättern nur 10 auswählen. die augewählten daten möchte ich in ein excel-blatt/liste zusammenfügen. jedoch nur mit einem tabellenkopf am anfang. die folge daten dann ohne.

vielleicht kann jemand weiterhelfen-

Gruß,
philipp
Top
#5
moin,

mit folgendem VBA-Code bekomme ich es fast hin. Was fehlt und noch nicht funktioniert ist, dass ich von den 17 Excel-Sheets nur 10 (Nummer 1 bis Nummer 10) zusammenfügen möchte. Hätte jemand dazu eine Ergänzung im VBA-Code?

Sub Combine()
Dim J As Integer
On Error Resume Next
Sheets(1).Select
Worksheets.Add
Sheets(1).Name = "Combined"
Sheets(2).Activate
Range("A1").EntireRow.Select
Selection.Copy Destination:=Sheets(1).Range("A1")
For J = 2 To Sheets.Count
Sheets(J).Activate
Range("A2").Select
Selection.CurrentRegion.Select
Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select
Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2)
Next
End Sub
Top
#6
Hola,

zur Info:

http://ms-office-forum.net/forum/showthr...p?t=335513

Gruß,
steve1da
Top
#7
(14.09.2016, 10:46)steve1da schrieb: Hola,

zur Info:

http://ms-office-forum.net/forum/showthr...p?t=335513

Gruß,
steve1da
ist das schlimm? suche ja nach einer lösung...
Top
#8
Hola,

schau mal hier:

http://www.clever-excel-forum.de/thread-3037.html

Gruß,
steve1da
Top
#9
(14.09.2016, 11:11)steve1da schrieb: schau mal hier:

http://www.clever-excel-forum.de/thread-3037.html

Ok, verstanden! Problem besteht weiterhin ;;)

Viele Grüße
Top
#10
Hi,

offenbar kannst du nur kopieren aber den Ablauf des Codes nicht verstehen, denn sonst wäre dir diese Codezeile aufgefallen:

For J = 2 To Sheets.Count


zähle nicht über alle sondern trage dort deine gewünschte Anzahl (10) ein
Mit freundlichen Grüßen  :)
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Zwergel für diesen Beitrag:
  • PhilippB.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste