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

Range ... Datenzu- /abgang variabel

Range ... Datenzu- /abgang variabel
18.05.2007 21:32:00
proxima05
Hallo,
ich habe da eine Frage zu einem Datenbereich (A1:G15). In diesen schreibe ich über ein UF verschiedene Daten (jeweils angehängt an die nächste Zelle ohne Inhalt in Spalte A), die allesamt eine zeitliche Befristung haben. Jetzt suche ich nach einer Möglichkeit aus dieser Range Daten zu löschen, die nicht mehr gültig sind.
Das wäre für sich genommen kein Problem, wenn jeweils die letzte mit Daten gefüllte Zeile zu löschen wäre. Leider kann es sein, dass auch eine Zeile in der Mitte ihre zeitliche Gültigkeit verliert und dann bekomme ich Probleme mit dem Schreiben in die letzte freie Zelle; diese liegt ja jetzt irgendwo mittendrin.
Mal ein Beispiel:
- A1:G11 (vollständig mit Daten gefüllt)
- Neuer Eintrag über das UF würde dann in A12 erfolgen
- Löschen des Inhalts der Zeile A8 bis G8
- Neuer Eintrag über das UF würde dann in G8 erfolgen?!
Wie kann ich ds denn lösen, dass es mir nicht meine Range zerschiesst?
Danke für einen Tipp.
Gruß
Ralph

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Range ... Datenzu- /abgang variabel
18.05.2007 22:08:02
Gerd
Hallo Ralf,
indem Du die Zellen "A8:G8" oder die ganze Zeile 8 löscht u. den neuen Eintrag
in "A11:G11" vornimmst ?
Gruß Gerd

AW: Range ... Datenzu- /abgang variabel
18.05.2007 22:33:52
Herby
Hallo Ralph,
wenn Du die gesamte Zeile löscht, in der das Datum überschritten ist,
dann ist dort auch keine leere Zeile mehr, denn die unteren verschieben sich
nach oben. Somit stellt sich Dein Problem gar nicht.
Option Explicit

Sub loeschen()
Dim lZeile As Long, i As Long
lZeile = Range(Rows.Count, 1).End(xlUp)
For i = lZeile To 2 Step -1
' deine Bedingungen
If Cells(i, 1) > Date Then
Rows(i).Delete
End If
Next i
End Sub


Viele Grüße
Herby

Anzeige
AW: Range ... Datenzu- /abgang variabel
19.05.2007 20:41:04
proxima05
Hallo,
Zeilen löschen darf ich leider nicht, lediglich deren Inhalte. Ich müsste also alle Inhalte, die sich unterhalb einer (von Inhalten) gelöschten Zeile befindet, nach oben an die freigewordene Position verschieben.
Wichtig ist, dass in den dann verschobenen Zellen keinerlei Formatänderungen stattfinden. Der Code von Herby scheint mir geeignet, lediglich die Anpassung um die Inhaltslöschung, anstelle der Zeilenentfernung habe ichnoch nicht ganz durchblickt.
Wäre toll, wenn ihr da nochmal drüber schauen könntet.
Besten Dank
Ralph

AW: Range ... Datenzu- /abgang variabel
19.05.2007 22:22:00
Gerd
Hallo Ralf,
so auf die Schnelle u. nur dürftig getestet.
Sub Inhalte_loeschen()
Dim lngZeile As Long
For lngZeile = 1 To 15
' deine Bedingungen
If Cells(lngZeile, 1) Empty And Cells(lngZeile, 1) Range(Cells(lngZeile, 1), Cells(lngZeile, 7)).ClearContents
End If
Next lngZeile
End Sub


Sub teststart()
If Einfügezeile > 15 Then MsgBox "Alle 15 sind gefüllt!": Exit Sub
MsgBox Range(Cells(Einfügezeile, 1), Cells(Einfügezeile, 7)).Address
End Sub



Public Function Einfügezeile() As Long
Dim eZeile As Long
While Cells(eZeile + 1, 1)  Empty
eZeile = eZeile + 1
Wend
Einfügezeile = eZeile + 1
End Function


Gruß Gerd

Anzeige
AW: Range ... Datenzu- /abgang variabel
20.05.2007 13:41:37
proxima05
Hallo Gerd,
danke für die schnelle Antwort. Ich teste sie mal durch und melde mich dann wieder. Wird aber ein bisschen dauern.
Schönen Sonntag noch.
Gruß
Ralph

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige