Anzeige
Archiv - Navigation
1900to1904
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

Hilfe bei einem Makro

Hilfe bei einem Makro
22.10.2022 14:34:15
Luna
Hallo ins Forum,
ich hoffe hier kann mir jemand bei einem Makro helfen.
Ich habe eine Intelligente Tabelle mit den Spalten B-F. In Spalte B in den Zellen DropDown Menüs und in der Spalte C DropDown Menüs die Abhängig sind von dem was in B ausgewält/eingetragen wird.
Jetzt habe ich ja das Problem das wenn ich den Eintrag in Spalte B ändere der Eintrag in Spalte C erstmal stehen bleibt.
Da habe ich im Netz folgendes Makro gefunden was den Eintrag in Spalte C löscht.

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 2 And Target.Validation.Type = 3 Then
Target.Offset(0, 1).Value = ""
End If
Application.EnableEvents = True
End Sub
Das funktioniert auch alles. Wenn ich dann aber z.B. das Datum in Spalte D, die Menge in Spalte E oder die Bemerkung in Spalte F ändern will kommt der Debugger und markiert mir diese Zeile im Makro:
If Target.Column = 2 And Target.Validation.Type = 3 Then
Hat da jemand eine Idee was im Makro geändert werden muss? Also falls sich jemand die Zeit dafür nimmt wäre ich sehr dankbar.
Vielen Dank wie immer an die Helfer
Luna

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe bei einem Makro
22.10.2022 14:50:09
Nepumuk
Hallo Luna,
versuch es so:

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
If Target.Validation.Type = 3 Then
Application.EnableEvents = False
Target.Offset(0, 1).Value = Empty
Application.EnableEvents = True
End If
End If
End Sub
Gruß
Nepumuk
AW: Hilfe bei einem Makro
22.10.2022 14:55:04
Luna
Vielen Dank Nepumuk,
funktioniert super.
Schönes Wochenende und Danke
Luna
AW: Hilfe bei einem Makro
22.10.2022 15:03:15
Daniel
Hi
Der Fehler kommt, wenn du den Validation.Typ abfragst und die Zelle keine Validation hat!
Das Problem ist, dass in einer IF-Prüfung die mehrere Abfragen enthält, die mit AND verknüpft sind, immer alle Abfragen durchgeführt werden.
Wenn du also die Datenüberprüfung nur in Spalte 2 hast, musst du zuerst prüfen, ob die Zelle in Spalte 2 liegt und danach erst, wenn dies erfüllt ist, auf den Validation.Typ prüfen:
Dazu trennt man die Prüfungen in zwei geschachtelte IFs

If Target.Column = 2 then
If Target.Validation.Type = 3 then
Allerdings bezweifle ich, dass die Abfrage auf den den Validation.Type hier notwendig und sinnvoll ist.
Was genau willst du den damit bezwecken?
Diese Abfrage wäre nur dann sinnvoll, wenn du innerhalb der Spalte 2 nicht nur einen bestimmten Typ verwendet, sondern mehrere unterschiedliche Datenüberprüfungen (also nicht nur Typ 3, sondern auch Typ 2 oder 1), sowas kommt aber selten vor.
Gruß Daniel
Anzeige
AW: Hilfe bei einem Makro
22.10.2022 16:12:08
Luna
Hallo Daniel,
vielen Dank für deine Anmerkungen. Dank Nepomuk ist das Problem gelöst.
Luna

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige