Das Archiv des Excel-Forums

Löschen eines Bereiches

Bild

Betrifft: Löschen eines Bereiches
von: Thomas3

Geschrieben am: 03.07.2008 08:15:37

Guten Morgen,
manchmal stehe ich dem Guten einfach im Wege und denke mir, Thomas, das soll nicht sein. Und trotzdem fuchst mich das tierisch, warum das nicht geht...
Aus einer Tabelle heraus soll in der gleichen Datei in einer anderen Tabelle der Bereich ab der Zeile 2 bis zur letzten beschriebenen Zeile gelöscht werden. Kein Problem...
lzeile = Thisworkbock.Sheet("Liste").cells(Rows.Count, 16).End(xlUp).Row
ThisWorkbook.Sheet("Liste").range(Cells(2,1),Cells(lzeile,16)).ClearContens
Wunderbar. Passt.
Nur, wenn in dem Bereich nichts steht, dann läuft der Befehl ins Leere und ich bekomme eine Fehlermeldung. Will ich nicht. Also schreibe ich :
lzeile = Thisworkbock.Sheet.("Liste").cells(Rows.Count, 16).End(xlUp).Row
If lzeile = 1 then
MsgBox "Da steht nix mehr"
Exit sub
else : ThisWorkbook.Sheet("Liste"). Range(Cells(2,1),Cells(lzeile,16)).ClearContens
End if
Und - Hurra - Ich bekomme eine Fehlermeldung bei dem ClearContens.
Kann mir einer sagen warum ?
Liebe Grüße
Thomas

Bild

Betrifft: AW: Löschen eines Bereiches
von: UweD
Geschrieben am: 03.07.2008 08:31:01
Hallo
sind einige schreibfehler drin....
so wäre es richtig
lzeile = ThisWorkbook.Sheets("Liste").Cells(Rows.Count, 16).End(xlUp).Row
If lzeile = 1 Then
MsgBox "Da steht nix mehr"
Exit Sub
Else: ThisWorkbook.Sheets("Liste").Range(Cells(2, 1), Cells(lzeile, 16)).ClearContents
End If
Gruß UweD

Bild

Betrifft: AW: Löschen eines Bereiches
von: Thomas3

Geschrieben am: 03.07.2008 20:48:28
Hallo UweD,
ja sorry....
War ein wenig früh heute.. Klar, da sind Schreibfehler drinnen, weil ich das aus dem Kopf geschrieben und nicht mit Copy / Paste aus dem Makro hergenommen habe.
Das löst nicht mein eigentliches Problem.
Wie gesagt. Schreibe ich das ClearContens ohne die IF -Schleife, dann läuft das durch. Mache ich die If-Schleife rein, startet das Makro schon garnicht, sondern hängt sich an der ClearContens-Zeile auf. Fehler wäre 1004.
Vielleicht noch eine Idee ?
Liebe Grüße und Danke
Thomas

Bild

Betrifft: AW: Löschen eines Bereiches
von: UweD
Geschrieben am: 04.07.2008 08:27:35
Hallo nochmal
Also. Der abgedruckte Code von mir funktioniert... Hast du den mal mit copy/paste probiert??
=====> Contents
Gruß UweD

Bild

Betrifft: AW: Löschen eines Bereiches
von: thomas3

Geschrieben am: 05.07.2008 07:11:53
hallo UweD,
auch mit Copy/Paste mag er nicht. Kommt immer Fehler 1004.
Dann muß ich eine andere Lösung finden.
Lieben Dank
Thomas

Bild

Betrifft: AW: Löschen eines Bereiches
von: Reinhard
Geschrieben am: 05.07.2008 11:16:22
Hi Thomas,
kopier mal deinen Komplettcode der Sub hier rein. Hat das Blatt Blattschutz?
Gruß
Reinhard

Bild

Betrifft: AW: Löschen eines Bereiches
von: Thomas3

Geschrieben am: 06.07.2008 09:07:56
Hallo Reinhard,
anbei der Code. Er ist nicht sehr groß... Oben das, was nicht geht, unten dann das, was ich umgeschrieben habe.
Datei ist nicht schreibgeschützt
Liebe Grüße
Thomas
Version 1
Info : In der Zeile 11 hängt er sich auf


Sub daten_Firmenübersicht_löschen()
Dim lzeile As Integer
Application.ScreenUpdating = False
lzeileTW = ThisWorkbook.Sheets("Firmenübersicht").Cells(Rows.Count, 1).End(xlUp).Row
If lzeile = 1 Then
MsgBox "In der Tabelle 'Firmenübersicht' sind keine Daten mehr", _
vbInformation, "Kleiner Hinweis"
Else: ThisWorkbook.Sheets("Firmenübersicht").Range(Cells(2, 1), Cells(lzeile, 16)). _
ClearContents
End If
Application.ScreenUpdating = True
End Sub


Version 2


Sub daten_Firmenübersicht_löschen()
Dim lzeile As Integer
Application.ScreenUpdating = False
Sheets("Firmenübersicht").Activate
lzeile = Cells(Rows.Count, 1).End(xlUp).Row
If lzeile = 1 Then
MsgBox "In der Tabelle 'Firmenübersicht' sind keine Daten mehr", _
vbInformation, "Kleiner Hinweis"
Else: Range(Cells(2, 1), Cells(lzeile, 16)).ClearContents
End If
Sheets("Schaltflächen").Activate
Application.ScreenUpdating = True
End Sub



Bild

Betrifft: AW: Löschen eines Bereiches
von: Reinhard
Geschrieben am: 06.07.2008 12:32:32
Hi Thomas,
schreib mal
Option Explicit
zuoberst in das Modul, dann lass nochmal Code 1 laufen, war es das?
Gruß
Reinhard

Bild

Betrifft: AW: Löschen eines Bereiches
von: thomas3

Geschrieben am: 06.07.2008 17:31:22
Hallo Reinhard,
das ist nett, dass du dir am Sonntag die Mühe machst....
Aber leider war es das auch nicht.....
Macht ja nix. Der zweite Weg tut es ja auch.
Liebe Grüße und noch einen schönen Sonntag
Thomas

 Bild

Excel-Beispiele zum Thema "Löschen eines Bereiches"

Auswahl eines Zellbereiches verhindern download URLs eines ausgewählten Bereiches in HyperLinks umwandeln download
Berechnung des ausgewählten Bereiches in der Statusleiste download Werte eines bestimmten Wochentages und eines Zeitbereiches addieren download
Datenreihenbeschriftungs-Quellbereich ausserhalb des Datenbereiches download Namen eines ausgewählten Bereiches auslesen download
Nur die sichtbaren Zellen eines AutoFilter-Bereiches einlesen download CheckBoxes eines vorgegebenen Bereiches prüfen download
Abfrage vor Start- und Enddatum eines zu druckenden Bereiches download Zahlen eines Bereiches jeweils 4 mal in eine Spalte schreiben. download
Alle Zeilen und Spalten außerhalb des benutzten Bereiches löschen download