Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Daten aus Tabellenblättern kopieren

Daten aus Tabellenblättern kopieren
13.01.2023 13:58:25
Sambus
Hallo VBA Experten.
Ich habe hier im Forum ein VBA Code gefunden. Den habe ich im Tabellenblatt eingefügt, damit bei Aktivierung alle Daten eingelesen werden.
Hier werden Alle Daten aus allen Tabellenblättern in ein bestimmtes Tabellenblatt nacheinander kopiert.
Das gute an dem Code ist , das alle Tabellenblätter kopiert werden, egal welchen Namen sie haben.
Mein Problem besteht darin, das das kopierte Blatt sich selbst auch noch einmal kopiert, das heißt aus 13000 Datensätzen werden 26000, alles ist doppelt.
Die Daten aus Tabelle 1 - 18 werden in Tabelle "KPS Import" Kopiert und dann kopiert sich das alles noch einmal in "KPS Import".
Meine Frage, wie kann ich den Import von "KPS Import" verhindern?
Für Eure Hilfe wäre ich dankbar, da meine VBA Kenntnisse dafür nicht ausreichen.

Private Sub Worksheet_Activate()
Dim Wks As Worksheet
Dim Bereich As Range
Dim strLC As String
Dim i As Integer
Me.Rows("2:" & Rows.Count).Clear
For i = 2 To Worksheets.Count
With Worksheets(i).UsedRange
strLC = .Cells(.Rows.Count, .Columns.Count).Address
Set Bereich = .Range("A2:" & strLC)
Bereich.Copy Destination:= _
Sheets("KPS IMPORT").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End With
Next i
End Sub
Vielen Dank im Voraus Maik
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten aus Tabellenblättern kopieren
13.01.2023 14:02:37
Rudi
Hallo,

Private Sub Worksheet_Activate()
Dim Wks As Worksheet
Dim Bereich As Range
Dim strLC As String
Dim i As Integer
Me.Rows("2:" & Rows.Count).Clear
For i = 2 To Worksheets.Count 'Warum 2?
If Worksheets(i).Name  Me.Name Then
With Worksheets(i).UsedRange
strLC = .Cells(.Rows.Count, .Columns.Count).Address
Set Bereich = .Range("A2:" & strLC)
Bereich.Copy Destination:= _
Sheets("KPS IMPORT").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
End With
End If
Next i
End Sub
Gruß
Rudi
Anzeige
AW: Daten aus Tabellenblättern kopieren
13.01.2023 14:34:51
Sambus
Hallo Rudi,
ich habe keine Ahnung. Ich habe den Code hier gefunden. Was bedeutet die 2 ?
Wenn ich eine 1 daraus mache, dann sind es über 30000 Datensätze, also mehr als das Doppelte-
Danke Maik
AW: Daten aus Tabellenblättern kopieren
13.01.2023 19:41:06
ralf_b
Worksheets ist eine Liste aller Arbeitsblätter. i ist ein Zähler der die Position des Blattes in der Liste repräsentiert. Die 2 heisst der Code arbeitet die Blätter ab dem 2.ten Arbeitsblatt in der Liste zum Letzten ab.
Anzeige
AW: Daten aus Tabellenblättern kopieren
14.01.2023 09:50:47
Maik
Hallo Ralf,
dann habe ich den Fehler gefunden. Das Blatt wo alles kopiert werden soll muss das Tabellenblatt 1 sein. Ich probiere das aus, Danke !
AW: Daten aus Tabellenblättern kopieren
14.01.2023 09:54:42
ralf_b
Diese Zeile schließt das Blatt aus, in dem dieser Code läuft.

 If Worksheets(i).Name  Me.Name Then

Anzeige
AW: Daten aus Tabellenblättern kopieren
14.01.2023 11:54:01
Sambus
Hallo Ralf, danke. Ich Test das.
Grüße Maik
AW: Daten aus Tabellenblättern kopieren
16.01.2023 10:25:19
Sambus
Hallo Rudi und Ralf,
ich habe die 2 auf 1 gesetzt und den Code von Rudi ersetzt. Jetzt macht er das was er soll. Danke Euch beiden, Maik
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige