Hallo,
normalerweise werden einem beim Eintippen von Controls die bestehenden Namen ja vorgeschlagen. Hier in diesem Fall aber nicht.
2025-09-17 13_43_47-Microsoft Visual Basic for Applications - PalSt0 - [Form_ufo_PAPalDiff (Code)].png
Und das, obwohl ich das Ereignis ja durch Klick auf das Control (bzw. dessen Ereignisprozedur) erstellt habe.
Ich habe schon gespeichert, komprimiert & repariert aber er weigert sich beharrlich.
Natürlich kann ich den Controlnamen ausschreiben, aber dann bekomme ich den Fehler Methode oder Datenobjekt nicht gefunden
Ich bin mir sicher, dass ich mir mal wieder ein Brett vor die Stirn genagelt habe, aber wo liegt mein Denkfehler?
Gruß
Doming
Hallo,
Zitat... bekomme ich den Fehler Methode oder Datenobjekt nicht gefunden
Die Fehlermeldung sagt eigentlich alles, oder?! Überprüfe deinen Code nochmal und erst wenn dieser fehlerfrei kompiliert werden kann, greift Intellisense.
Benutzt du kein "Option Explicit" in deinem Code?
Knobbi38
PS:
Wäre das Thema vielleicht im Unterforum "Access Programmierung" nicht besser aufgehoben?
Hallo,
natürlich habe ich Option Explicit drin.
Aber ich raff's immer noch nicht, wenn er mir die Sub DxAP_Click selber generiert, warum erkennt er den Namen DxAp dann nicht?
und zum PS: primär benötige ich Hilfe bei diesem Problem, die sonstige Programmierung steht ja schon ;)
Die VBE/Intellisense erkennt den Namen solange nicht, bis der Code fehlerfrei kompiliert werden kann (s.o.)
Kommentiere also die entsprechende Ereignisroutine aus und kompiliere deinen Code fehlerfrei. Danach kannst du wie gewohnt weiter machen.
Zitat von: Doming am September 17, 2025, 14:42:06natürlich habe ich Option Explicit drin.
Das ist schonmal gut. Aber lässt sich dein Code auch erfolgreich kompilieren? Das ist ja der Schritt, an dem Option Explicit erst einen effektiven Unterschied macht.
das muss sich jetzt morgen zeigen, mir kam jetzt der wohlverdiente Feierabend dazwischen :-)
Ich bin gespannt auf den kleinen Pferdefuß, den ich mir da reingebaut habe.
Schon mal Decompile versucht?
Hallo Doming,
Was sind denn "Feld", "Objekt" und "Palette"?
Für mich sieht das so aus, als ob da nur die "=" fehlen.
gruss ekkehard
Hallo,
Feld, Objekt und Palette sind Prozeduren. Da die Dx-Klicks zum Teil gleiche Befehle aufrufen, habe ich sie in eigene Subs ausgelagert.
Um die Sache aufzulösen: Das Kompilieren hat mir jeden der DXe als Fehler angezeigt.
Nun habe ich einfach jedem Control seinen Namen nochmal identisch zugewiesen, jetzt läuft der Compiler durch.
2025-09-18 06_12_57-Microsoft Visual Basic for Applications - PalSt0 - [Form_ufo_PAPalDiff (Code)].png
Ich bin zu alt, um mich drüber aufzuregen, nun läuft es. Ich muss nicht alles verstehen.
Schönen Dank für Eure Aufmerksamkeit
Gruß
Doming
Von wegen! Der Zirkus geht weiter:
Wenn ich jetzt eine der Controls anklicke, bekomme ich diesen Fehler
2025-09-18 06_35_45-Palettensteuerung.png
Kommentiere ich die Ereignisse aus, passiert, wie erwartet, gar nichts. Kein Fehler, keine Reaktion.
2025-09-18 06_34_10-Microsoft Visual Basic for Applications - PalSt0 - [Form_ufo_PAPalDiff (Code)].png
Wenn ich jetzt aber nur die Befehle auskommentiere, bekomme ich die Fehlermeldung wie oben
2025-09-18 06_42_03-Microsoft Visual Basic for Applications - PalSt0 - [Form_ufo_PAPalDiff (Code)].png
Die Haltepunkte werden nicht angesprochen.
Der Compiler meckert auch nicht.
Ich habe jetzt schon die Ereignisprozeduren der Controls gelöscht, danach komp&rep, neu gestartet, beim Klicken passiert nichts. Dann die Ereignisse wieder aktiviert, Ergebnis wie oben.
So!
weil da ja offenbar irgendwas im Code vergrützt war, habe ich das ganze Unterformular kopiert, das alte gelöscht, das Neue umbenannt und siehe da: Nun läuft es.
Es bleibt ein fader Beigeschmack, aber so weiß ich, dass auch mal irgendwo ein Bit quer liegen kann.
Hallo Doming,
in solchen Fällen kann es hilfreich sein, wie Markus das in #6 auch schon vorgeschlagen hat, ein Decompile durchzuführen.
Gruß Knobbi38