Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Werte löschen mit Bedingung
26.01.2022 19:26:20
Edmund
Hallo,
vielleicht kann mir einer bei meinem Problem helfen.
Ich möchte, dass wenn auf Tabellenblatt "Eingabe" bei G11 der Name "Neubau" erscheint automatisch auf dem Tabellenblatt "Vorbelegung" die Werte bei J5 und K5 gelöscht werden ohne das die Ansicht zum Tabellenblatt "Vorbelegung" wechselt.
Meine Version geht leider nicht.
mfg
Edmund

Private Sub Neubau_Beitragssatz_löschen()
If Sheets("Eingabe").Range("G11") = "Neubau" Then
Sheets("Vorbelegung").Range("J5:K5").Select
ActiveSheet.Unprotect
Selection.Locked = False
Selection.FormulaHidden = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Range("J5").Select
Selection.ClearContents
Range("K5").Select
Selection.ClearContents
ActiveSheet.Unprotect
Range("J5:K5").Select
Selection.Locked = True
Selection.FormulaHidden = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte löschen mit Bedingung
26.01.2022 19:40:39
Oberschlumpf
Hi Edmund,
hilft das hier?

Private Sub Neubau_Beitragssatz_löschen()
If Sheets("Eingabe").Range("G11") = "Neubau" Then
With Sheets("Vorbelegung")
.Unprotect
.Range("J5:K5").Value = ""
.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
End If
End Sub
Ciao
Thorsten
AW: Werte löschen mit Bedingung
26.01.2022 20:04:31
Edmund
Hallo Thorsten,
leider nicht.
Wenn ich es in die Tabelle "Vorbelegung" einbaue nicht ebenso wenn ich es in die Tabelle "Eingabe" einbaue nicht
Der Beitragssatz bleibt dort stehen.
Lasse ich es im VBA Projekt mit F5 ausführen klappt es.
lg Edmund
Anzeige
AW: Werte löschen mit Bedingung
26.01.2022 20:15:40
Oberschlumpf
Hi Edmund,
zeig mal bitte per Upload eine Bsp-Datei mit Bsp-Daten und deinem Code.
Ciao
Thorsten
AW: Werte löschen mit Bedingung
27.01.2022 07:41:13
Pierre
Hallo Edmund,
ich klinke mich mal ein (hoffe, dass geht in Ordnung, Thorsten).
Integriere Thorstens Code in deinen bestehenden "Private Sub Worksheet_Change".
Sieht dann ungefähr so aus, wenn es fertig ist:

Private Sub Worksheet_Change(ByVal Target As Range)
'Button nach Denkmalschutz wird nur angezeigt wenn bei Eingabe Denkmalschutz auf Ja steht
Dim i As Long
If Target.Address = "$D$12" Then
Worksheets("Wert1914").ButtonNachDenkmalschutz.Visible = Target.Value = "Ja"
For i = 6 To 17
With Worksheets("Denkmalschutz").OptionButtons("Optionsfeld " & i)
If Target.Value = "Ja" Then
.Visible = True
Else
.Visible = False
.Value = xlOff
End If
End With
Next i
End If
  If Sheets("Eingabe").Range("G11") = "Neubau" Then
With Sheets("Vorbelegung")
.Unprotect
.Range("J5:K5").Value = ""
.Range("C12:C13").Value = ""
.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End With
End If
End Sub
Der fette Teil ist Thorstens Code-Teil.
Übrigens, wenn du 2 Bereiche leeren willst, hier also J5:K5 und C12:C13, schreibe das beieinander.
Habe es zwar sofort geändert in deinem eingepflegten Code, aber ich denke nicht, dass nach dem Blattschutz die Zellen C12:C13 noch geleert werden.
Gruß Pierre
PS: Auf Schönheit habe ich dabei jetzt nicht geachtet.
Anzeige
AW: Werte löschen mit Bedingung
27.01.2022 07:49:31
Oberschlumpf
Hi Pierre
so ähnlich war ja mein 1. Gedanke/Antwortversuch.
Da Edmund aber meinte, dass das nicht hilft, hab ich nich weiter getestet, sondern bin davon ausgegangen (nachdem ich die Testdatei sah), dass das Change-Ereignis bei Änderung durch Formel (in G11) nicht wirkt; es reagiert das Calculate-Ereignis.
Da ich aber Calculate nur in G11 nicht überwachen konnte, bin ich den "Umweg" über Änderung Baujahr gegangen.
Ciao
Thorsten
AW: Werte löschen mit Bedingung
27.01.2022 08:11:02
Pierre
Hallo Thorsten,
ich habe deinen ersten Code gesehen und dachte mir, dass es als "Worksheet_Change" laufen dürfte, habe dann in der Beispielmappe gesehen, dass dieses Event schon existiert und habe dann beide Codes einfach zusammengewürfelt. Damit lief es (zumindest die Fragestellung, die beiden Zellen zu leeren).
Hab also nur dieses "läuft nicht" ausräumen wollen. Bei allem Anderen habe ich nicht mehr geguckt.
Gruß Pierre
Anzeige
AW: Werte löschen mit Bedingung
27.01.2022 12:28:22
Edmund
Hallo Pierre Hallo Thorsten,
ich habe den Code wie oben angegeben eingebaut, perfekt !!!!
Macht alles so wie ich es wollte, sobald auf der Eingabeseite das Baujahr geändert wird in 2022 ( Neubau ) löscht der Code auf der Vorbelegung den errechneten Prämiensatz aus einer vorherigen Berechnung und löscht auch die eingegebenen Werte in C11 und C12.
Danke vielmals hat mir ein ganzes Stück weitergebracht
lg Edmund
AW: Werte löschen mit Bedingung
27.01.2022 07:47:02
Oberschlumpf
Hi Edmund
hier, versuch mal
https://www.herber.de/bbs/user/150706.zip
In Worksheet_Change hab ich eine Überwachung der Zelle D11 (Baujahr) eingebaut.
Wenn du also das Baujahr änderst, wird zuerst überprüft, welcher Wert in Zelle G11 steht.
Wenn in G11 = Neubau, werden automatisch in Tabelle "Vorbelegung" die Werte in den Zellen J5 + K5 gelöscht.
Hilfts?
Ciao
Thorsten
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige