Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1504to1508
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
Inhaltsverzeichnis

Inhalte Automatisch löschen

Inhalte Automatisch löschen
01.08.2016 16:04:45
Jan
Hallo,
ich habe folgendes Problem:
ich habe eine Excel mit der mehrere Personen arbeiten und Sobald ein Artikel gelöscht wird da dieser fertig ist muss die Excel Automatisch den Inhalt 4 weiter Spalten löschen da diese Manuell gepflegt werden und sonst zu fehlern führern können.
Das Nächste Problem ist eine dieser 4 Spalten ist auf einem anderen Blatt.
Der Blattschutz muss immer Aktiv bleiben damit die Formeln alle Intakt bleiben.
Aufgrund der tatsache das ich noch ein VBA leihe bin kann ich so einen Code nicht selbst schreiben und hoffe hier im Forum auf Hilfe.
Vielen Dank schonmal
Beispieldatei anbei
https://www.herber.de/bbs/user/107348.xlsx

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalte Automatisch löschen
01.08.2016 20:57:22
Piet
Hallo Jan
ch denke die beigefügte Beispieldatei dürfte das Problem zufriedenstellend lösen.
Ich hoffe ich habe das Makro so übersichtlich geschrieben das du es verstehen kannst.
Vor dem Löschen wird zur Sicherheit abgefragt ob man es wirklich will. Siehe selbst ...
ttp://www.herber.de/bbs/user/107357.xls
mfg Piet
AW: Inhalte Automatisch löschen
02.08.2016 07:08:45
Jan
Hallo Piet,
Danke für den Lösungsvorschlag dieser hilft mir jedoch nicht.
Ich möchte auf keinen fall die Spalten löschen sondern nur den inhalt der Spalten aber in Datenblatt ab zeile 3 und Kontrolle ab zeile 2 und das ganze muss komplett automatisch laufen.
Anzeige
AW: Inhalte Automatisch löschen
02.08.2016 07:49:29
baschti007
Du müsstest vielleich sagen ob immer die 4 selben Spalten (der Spalten Inhalt) gelöscht werden soll.
Hier das von Piet etwas anders

Option Explicit       '1.8.2016  Piet  für HerEnde Forum
Const SpaEnde1 = "D25"
Const SpaEnde2 = "E25"
Dim LÖB As Object, j As Integer
Dim Spa As String, laz1 As Integer
Dim DSpa As String, laz2 As Integer
Sub Automatisch_löschen()
Dim ok As Variant
Set LÖB = Worksheets("LöBlatt")
laz1 = LÖB.Range(SpaEnde1).End(xlUp).Row
laz2 = LÖB.Range(SpaEnde2).End(xlUp).Row
If laz1 > 4 Then  'Endzelle > 4
DSpa = Left(SpaEnde1, 1)
Worksheets("Datenblatt").Select
'Schleife für alle Spalten löschen
For j = laz1 To 5 Step -1
Spa = LÖB.Range(DSpa & j).Value
Columns(Spa).Select  'Spalte anzeigen
Worksheets("Datenblatt").Range(Cells(3, Spa), Cells(Worksheets("Datenblatt").Cells(65536,  _
Spa).End(xlUp).Row, Spa)).Clear
Next j
End If
If laz2 > 4 Then  'Endzelle > 4
DSpa = Left(SpaEnde2, 1)
Worksheets("Kontrolle").Select
'Schleife für alle Spalten löschen
For j = laz2 To 5 Step -1
Spa = LÖB.Range(DSpa & j).Value
Columns(Spa).Select  'Spalte anzeigen
Worksheets("Kontrolle").Range(Cells(2, Spa), Cells(Worksheets("Kontrolle").Cells(65536,  _
Spa).End(xlUp).Row, Spa)).ClearContents
Next j
End If
End Sub

Anzeige
AW: Inhalte Automatisch löschen
02.08.2016 09:08:43
Jan
Hallo baschti007,
auch dir danke für deine Hilfe, aber ich möchte nur den inhalt der dazugehörigen spalten löschen quasi wenn ich im Datenblatt die Artikelnummer aus E4 lösche muss B4,C4,L4 und in Kontrolle I3 gelöscht werden.
Sry für schlechte beschreibung.
AW: Inhalte Automatisch löschen
02.08.2016 09:30:26
baschti007
Wenn die Zeilen Anzahl auf beiden Sheets immer nur um einen Versetzt ist dann so
den code in Tabelle Datenblatt einfügen
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Wk As Worksheet
Set Wk = Worksheets("Kontrolle")
If Target.Column = 5 Then
If Target = "" Then
Target.Offset(0, -2) = ""
Target.Offset(0, -3) = ""
Target.Offset(0, 7) = ""
Wk.Cells(Target.Row - 1, 9) = ""
End If
End If
End Sub
Du musst so was besser beschreiben sonst machen die Leute sich so viel müde für nix =)
Gruß Basti
Anzeige
AW: Inhalte Automatisch löschen
02.08.2016 09:41:44
baschti007
Wenn du Mehrere auf einmal löschen willst und eine Range ziehst dann so
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Wk As Worksheet
Dim zell As Range
Set Wk = Worksheets("Kontrolle")
If Target.Column = 5 Then
For Each zell In Target
If zell = "" Then
zell.Offset(0, -2) = ""
zell.Offset(0, -3) = ""
zell.Offset(0, 7) = ""
Wk.Cells(zell.Row - 1, 9) = ""
End If
Next
End If
End Sub

AW: Inhalte Automatisch löschen
02.08.2016 10:14:50
Jan
Danke!!!
Das ganze Funktioniert wunderbar :-)
Bitte =)
02.08.2016 14:21:46
baschti007

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige