Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
396to400
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
396to400
396to400
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nach Datum Ordnen

Nach Datum Ordnen
16.03.2004 17:15:33
Fritz
hallo ich sthe grad irgenwie auf dem schlauch und bräucht mal hilfe.
ich habe mehrere tabellenblätter mit jeweils einer Spalte in der abwechselnd ein Datum und dann ein zahlenwert geschrieben sind.
ich will jetzt mittels eines Makros einzelnen Tabellenblätter zu einem zusammenführen. In der ersten Spalte soll das jeweilige Datum stehen und in den nächsten die wert passend zum Datum aus den jeweiligen Tabellenblättern (für jedes Tabellenblatt eine Spalte).
Das Problem ist es gibt in den Tabellenblättern manche Daten doppelt und manche gar nicht.
Gruß Fritz

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Nach Datum Ordnen
16.03.2004 21:19:27
Christoph Meffert
hallo Fritz,
es steht also immer in Spalte A:
1.12.2003
1234
3.12.2003
3456
etc.
Dann füge eine neues Tabellenblatt mit dem Namen "Auswertung" hinzu schiebe dies an die ersten Stelle. (das geht auch per Code: s.u.)
Anschließend kopierst du von jeder Tabelle das Datum in SpalteA, den Wert in SpalteB und wenn du willst, den Namen der Tabelle, von der der Datensatz stammt in SpalteC der Tabelle "Auswertung":
Gruß
Christoph
('ne Rückmeldung wäre nett)
Option Explicit

Sub Auswertung()
Dim LRow As Long, i As Long, k As Long, j As Integer
Dim ws As Worksheet
Dim tb As Worksheet
Set tb = ThisWorkbook.Worksheets.Add(Before:=Worksheets(1))
tb.Name = "Auswertung"
k = 1
For j = 2 To Worksheets.Count
Set ws = Worksheets(j)
LRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
'in A1 steht das erste Datum
For i = 1 To LRow1 Step 2
ws.Cells(i, 1).Copy tb.Cells(k, 1)
ws.Cells(i + 1, 1).Copy tb.Cells(k, 2)
'Zur Kontrolle aus welchem Tabellenblatt die Daten stammen:
tb.Cells(k, 3).Value = ws.Name
k = k + 1
Next i
Next j
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige