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

Zeilen gleicher Datum und Uhrzeit löschen

Zeilen gleicher Datum und Uhrzeit löschen
12.04.2017 13:23:05
dagi
Hallo,
habe ein Problem:
ich möchte die in Spalte A Zeile 2-100 Datumsangaben mit Uhrzeit 1:00 - -24:00 Uhr überprüfen.
Ich möchte Datum mit gleicher Uhrzeit löschen. Sollte z.B. 2:00 Uhr nicht dabei sein
dann eine Zeile hinzufügen und die Werte von 1:00 Uhr kopieren.
Kann mir jemand helfen?
Danke!
Gruß

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen gleicher Datum und Uhrzeit löschen
12.04.2017 14:13:28
Jonas
Hallo Dagi,
welche Daten stehen da, Zahlen ,Worte? Und stehen die Daten hinter Datum und Uhrzeit ?
Wenn du die Tabelle hochladen könntest wäre das natürlich am besten :).
Wenn nicht wäre eine genauer Beschreibung von Vorteil. :)
Gruß Jonas
AW: Zeilen gleicher Datum und Uhrzeit löschen
12.04.2017 14:43:38
Dagi
Hallo Jonas,
habe die Tabelle hochgeladen: https://www.herber.de/bbs/user/112839.xlsx
z.B. Datum A6 und A7 gleich, A7 löschen.
A9 und A10: 5:00 Uhr fehlt. Zwischen A9 und A10 eine Zeile hinzufügen und den Datensatz
von A9 kopieren.
Danke.
Gruß
AW: Zeilen gleicher Datum und Uhrzeit löschen
12.04.2017 16:14:50
Jonas
Hallo Dagi,
tut mir leid hat etwas Länger gedauert musste noch was erledigen.
Hier mein Vorschlag:
Sub LöschenUndKopieren()
Dim i As Integer
Dim lr As Long
Dim Wert1 As Double
Dim Wert2 As Double
lr = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To lr
If Cells(i, 1).Value = Cells(i + 1, 1).Value Then
Cells(i + 1, 1).Delete Shift:=xlUp
End If
Wert1 = Application.WorksheetFunction.Round(Cells(i + 1, 1).Value, 3) 'Untere zelle
Wert2 = Application.WorksheetFunction.Round(Cells(i, 1).Value + 1 / 24, 3) 'obere Zelle
If Wert1 > Wert2 Then
Range(Cells(i + 1, 1), Cells(i + 1, 6)).Select
Selection.Insert Shift:=xlDown
Range(Cells(i + 1, 1), Cells(i + 1, 6)).Value = Range(Cells(i, 1), Cells(i, 6)).Value
Cells(i + 1, 1).Value = Cells(i + 1, 1).Value + 1 / 24
End If
Cells(2, 7) = i + 1
Next i
End Sub

Bei mir hats geklappt aber mach die lieber vorher ne Kopie, man kann nie wissen.
Gruß Jonas
Anzeige
AW: Zeilen gleicher Datum und Uhrzeit löschen
12.04.2017 18:38:09
Dagi
Sorry. Bin erst jetzt wieder online.
Vielen Dank Jonas.
Funktioniert Super.
Gruß
Funktioniert Super - sehe ich anders
12.04.2017 19:15:28
Matthias
Hallo
Das ist allerdings keine Kritik an Jonas.
Aber wenn Du schreibst
Funktioniert Super
hast auch Du nicht bemerkt, das die Daten unterhalb des letzten Eintrags in Spalte("A")
in den anderen Spalten nicht gelöscht sind.
Gruß Matthias
AW: Funktioniert Super - sehe ich anders
13.04.2017 07:50:48
Jonas
Hallo Matthias,
du hast schon recht hatte gestern nur keine Zeit das zu beheben.
Aber dann hättest du ja ne geänderte Version posten können ;)
Aber ist ok ich setzt mich nochmal dran :)
Gruß Jonas
AW: Funktioniert Super - sehe ich anders
13.04.2017 10:37:48
Jonas
Hallo Zusammen,
also ich habe jetzt nicht das ganze Teil umgeschrieben sondern etwas getrickst :)
Sub LöschenUndKopieren()
Dim i As Integer
Dim lr As Long
Dim Wert1 As Double
Dim Wert2 As Double
lr = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To lr
If Cells(i, 1).Value = Cells(i + 1, 1).Value Then
Cells(i + 1, 1).Delete Shift:=xlUp
i = i -1
End If
Wert1 = Application.WorksheetFunction.Round(Cells(i + 1, 1).Value, 3) 'Untere zelle
Wert2 = Application.WorksheetFunction.Round(Cells(i, 1).Value + 1 / 24, 3) 'obere Zelle
If Wert1 > Wert2 Then
Range(Cells(i + 1, 1), Cells(i + 1, 6)).Select
Selection.Insert Shift:=xlDown
Range(Cells(i + 1, 1), Cells(i + 1, 6)).Value = Range(Cells(i, 1), Cells(i, 6)).Value
Cells(i + 1, 1).Value = Cells(i + 1, 1).Value + 1 / 24
End If
Cells(2, 7) = i + 1
Next i
End Sub

Mal schauen wers erkennt und wer sich drüber aufregt ;)
Gruß Jonas
Anzeige
Du hängst in der Schleife fest!
13.04.2017 16:09:45
Matthias
Hallo Jonas
Das ist ne Endlosschleife
Die Variable i hat immer den Wert 61
Hast Du es denn nicht getestet?
Userbild
Glaubs mir rückwärts löschen ist einfacher ;-)
Gruß Matthias
AW: Du hängst in der Schleife fest!
13.04.2017 16:22:35
Jonas
Hallo Matthias,
also bei mir klappt das, aber dank dir hab ich noch mal drauf geschaut und hab was anderes entdeckt.
Beim .delete sollte man am besten ne Range angeben nämlich:
Range(Cells(i + 1, 1), Cells(i + 1, 6))
Gruß Jonas
nochmal Zeit investieren ohne Rückmeldung, Nee!
13.04.2017 15:46:40
Matthias
Hallo Jonas
Wenn es keine Rückmeldung gibt, warum sollte ich etwas neues für Dagi schreiben?
Ich habe am 12.04.2017 16:18:11 einen Beitrag geschrieben
Dagi hat Dir am 12.04.2017 18:38:09 geantwortet.
Also hat Dagi meinen Beitrag gesehen.
Warum sollte ich also nochmal Zeit investieren, wenns keine Rückmeldung gibt.
Gruß Matthias
Anzeige
AW: nochmal Zeit investieren ohne Rückmeldung, Nee!
13.04.2017 15:54:41
Jonas
Hallo Matthias,
naja direkt dannach eben.Vorallem um auch Leuten, die das später lesen die richtige Lösung zu geben.
Aber ich hab ja schon eine geposted.
Gruß Jonas
unklare Aufgabenstellung ...
12.04.2017 16:18:11
Matthias
Hallo
Das löschen kannst Du mal an einer Kopie so probieren:
Dim x&
For x = 68 To 2 Step -1
If Cells(x, 1) = Cells(x - 1, 1) Then
Rows(x).Delete
End If
Next
Zitat
A9 und A10: 5:00 Uhr fehlt. Zwischen A9 und A10 eine Zeile hinzufügen und den Datensatz
von A9 kopieren.


Dann hast Du aber wieder 2 gleiche Zeilen!

Vermutlich willst Du dann ja zwischen 04:00" und "06:00" die "05:00" eintragen.
Oder?
Gruß Matthias
Anzeige
AW: unklare Aufgabenstellung ...
12.04.2017 16:20:45
Jonas
Hallo Matthias,
Lösung ist schon fertig ;)
Gruß Jonas
Du musst von unten nach oben löschen
12.04.2017 16:41:30
unten
Hallo Jonas,
bei Dir bleiben Daten unterhalb stehen.
Du musst von unten nach oben löschen.
Gruß Matthias

364 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige