Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1068to1072
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

BUG ? Dropdown-Liste der Datenvalidierung

BUG ? Dropdown-Liste der Datenvalidierung
29.04.2009 10:25:13
Markus
Hallo Forum,
mir ist ein seltsames Verhalten im Zusammenhang mit der Datenvalidierung ("Daten - Gültigkeit ...") aufgefallen. Durch einen VBA-Code kann die die Funktion killen. Seit Tagen bastel ich schon an einem Sheet, bei dem die Validierungsfunktion erforderlich ist. Plötzlich funktionierte diese nicht mehr, d.h. die Dropdown-Liste erschien einfach nicht mehr ! Es war aber nicht die Einstellung "Alle Objekte anzeigen" unter "Extras - Ansicht".
Folgendes habe ich gemacht:
Ich habe mit div. OLE-Objekten rumgebastelt und mir zwecks Bereinigung eine Funktion gebastelt, die mir
alle Buttons, Combos, Shapes, Combos, usw. löscht, die z.B. den Namen "Picture xyz", "Button xyz" oder "Drop Down xyz" haben, also den von Excel vergebenen Namen mit einer zufälligen bzw. aufsteigenden Nummer.
Beispiel-Codeauszug für die Dropdown-Elemente:
Dim s As Shape
For Each s In ThisWorkbook.Sheets("Tabelle1").Shapes
If Left(s.Name, 9) = "Drop Down" Then
s.Delete
Next

Der Bereinigungslauf löscht damit alle Objekte, die nicht von mir mit einem speziellen Namen versehen wurden, z.B. Buttons mit Name "ClearBtn" oder "NewJobBtn", usw.
Zur Gültigkeitsprüfung (Validierung):
Die Validierung richtet je Sheet ein Shape mit Name "Drop Down xyz", d.h. mit einer zufälligen Nummer ein.
Wird jetzt aber der oben beschriebene Bereinigungslauf gestartet, wird damit auch die Komponente der Validierung gelöscht. Das wäre ja nicht schlimm. Nur funktioniert diese anschließend auf dem Sheet NIE mehr. Andere Sheets sind dann nicht betroffen, weil die Löschung ja nur auf dem angegebenen Sheet erfolgte.
Klar, man könnte jetzt sagen: "Dann lösch sie halt nicht !". Nur in meinem speziellen Fall möchte ich die
vom Anwender reingebrachten Elemente bereinigen. Mit etwas Umstand habe ich das auch schon erledigt. Worum es mir geht ist ja: Wie kann ich die Funktion trotzdem wieder gangbar machen ? Es muß ja ein Trick hinter dem speziellen Validierungs-Dropdown stecken ?
Das Beispielsheet lade ich euch auch mal hoch ....
Irgend welche Ideen dazu ?
Grüße
Markus Deuter

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

Betreff
Datum
Anwender
Anzeige
AW: BUG ? Dropdown-Liste der Datenvalidierung
29.04.2009 16:30:29
Original
Hi,
verwende statt Shapes die DrawingObjects-Auflistung, da bleibt das InCellDropdown
unangetastet.
mfg Kurt
AW: BUG ? Dropdown-Liste der Datenvalidierung
29.04.2009 21:46:20
Markus
Hallo Kurt,
vielen Dank für die rasche Antwort und Hilfe.

da bleibt das InCellDropdown unangetastet.


.... cool - man lernt halt immer noch was dazu !
Für die Interessierten: der Code sähe dann beispielsweise so aus:
Dim Obj
Dim DrwObj
Set DrwObj = ThisWorkbook.Sheets("Tabelle1").DrawingObjects
For Each Obj In DrwObj
If Left(Obj.Name, 9) = "Drop Down" Then
Obj.Delete
End If
Next

Das Validierungs-Dropdown taucht in der Liste gar nicht auf, wie Kurt geschrieben hat.
Weiß jemand vielleicht noch, wie man das gelöschte Dropdown-Objekt wieder richtig registiert ?
Sonst muss ich wohl mein zerschossenes Worksheet doch wieder neu aufbauen ;-)
Grüße Markus

Anzeige
AW: BUG ? Dropdown-Liste der Datenvalidierung
29.04.2009 21:51:28
Original
Hi,
"...Sonst muss ich wohl mein zerschossenes Worksheet doch wieder neu aufbauen.."
Musst du, das InCellDropdown entzieht sich jedem Zugriff, außer, daß es gelöscht werden kann,
was sicher von den Excel-Programmierern nicht gewollt war.
mfg Kurt
AW: BUG ? Dropdown-Liste der Datenvalidierung
29.04.2009 22:01:22
Markus
Hallo Kurt,
... also doch ehr ein Bug als ein Feature ?!

Musst du ...


Shit ! Also gut. Kaffeemaschine anschmeißen und Ärmel hochkrämpeln ;-)
Grüße
Markus

325 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige