Kopieren Sie ein schon vorhandenes ActiveX nicht über die Zwischenablage (z.B. aus einem schon vorhandenen Formular) sondern fügen Sie neue ActiveX Steuerelemente immer in der Entwurfsansicht über „Einfügen“ / „ActiveX-Steuerelement…“ ein.
Sie müssen das Steuerelement (.ocx) registrieren. Führen Sie dazu folgende Schritte aus:
-
Das Steuerelement („Datei.ocx“) muss in einem Verzeichnis (z.B.: „C:IhrOrdner“) auf den PC vorhanden sein.
- Wählen Sie „Start“ / „Ausführen“.
- Geben Sie folgendes ein „regsvr32.exe C:IhrOrdnerDatei.ocx“ und bestätigen Sie mit „OK“.
- Anschließend erhalten Sie die Meldung: „DllRegisterServer in C:IhrOrdnerDatei.ocx erfolgreich durchgeführt.“
Das Steuerelement, welches Sie einsetzen ist auf diesem Rechner nicht registriert.
- Beenden Sie Ihre Datenbank.
- Führen Sie die Punkte „In Access unter Einfügen / ActiveX-Steuerelement… wird das Steuerelement nicht mit aufgelistet“ aus.
- Starten Sie Ihre Datenbank.
- Wählen Sie „Start“ / „Ausführen“.
- Geben sie folgendes ein „regsvr32.exe C:IhrOrdnerDatei.ocx /u“ und bestätigen Sie mit „OK“.
- Anschließend erhalten Sie die Meldung: „DllUnregisterServer in C:IhrOrdnerDatei.ocx erfolgreich durchgeführt.“
- Nun können Sie das .ocx vom PC löschen.
Die Ereignisse sind nur im Visual Basic Editor sichtbar.
- In der Entwurfsansicht des Formulares wechseln Sie mit „Ansicht“ / „Code“ in den „Visual Basic Editor“
- In der linken Combobox (Blau) wählen Sie Ihr Steuerelement aus dem Formular.
- In der rechten Combobox (Rot) wählen Sie das gewünschte Ereignis.
Es wird automatisch der entsprechende Code eingefügt. - Tragen Sie ihren Code zwischen „Private Sub …“ und „End Sub“ ein.
Um volle IntelliSense Unterstützung für Ihr Steuerelement zu bekommen müssen Sie dieses als Object deklarieren.
Access 97: http://msdn.microsoft.com/library/default.asp?url=/archive/en-us/dnaro97ta/html/msdn_ode2.asp
Access 2000: http://support.microsoft.com/default.aspx?scid=kb;en-us;279029
Access 2002: http://support.microsoft.com/default.aspx?scid=kb;en-us;297391
Access 2003: In den Visual Studio Tools für Office sind keine OCX Controls zur Weitergabe mehr enthalten.
Kalendersteuerelement:
Das Kalendersteuerelement sorgt des öfteren für Probleme. Vor allem wenn mehrere Versionen des Steuerelementes auf dem PC installiert sind.
Für das Steuerelement gibt es mehrere Lösungen als Ersatz:
http://www.lebans.com/monthcalendar.htm
http://www.freeaccess.de/downloaddetails.asp?ID=2
http://www.granite.ab.ca/access/calendars.htm (Tony's Kalender-Linksammlung)
http://www.add-in-world.com/katalog/access-kalender
Common Dialog:
Auch für dieses Steuerelement, welches einen „Öffnen/Speichern“, „Farbauswahl“, „Schriftartenauswahl“ und einen „Druckerauswahl“ – Dialog zur Verfügung stellt, gibt es mehrere Alternativen:
- Für den „Öffnen/Speichern“ Dialog gibt es den „FileDialog“ von Karsten Pries (http://www.dbdev.org, http://www.kpries.de)
- Von Henry Habermacher den Comdlg32-Ersatz (http://www.dbdev.org)
- „Öffnen/Speichern“ Dialog: http://www.mvps.org/access/api/api0001.htm
- „Farbauswahl“: http://www.mvps.org/access/api/api0060.htm
- „Schriftartenauswahl“: http://www.mvps.org/access/api/api0061.htm
- In meiner Toolssammlung gibt es Assitenten, welchen einen „File/Folder – Dialog“ sowie einen „Font/Color - Dialog“ erstellen. Diese kopieren den komplett benötigten Code incl. Aufruf in Ihre Datenbank (Freeware).
ListView, TreeView, DateTimePicker-Control, Slider, SpinCtrl, ProgressBar, AnimationCtrl, ImageList:
Unter http://www.access-paradies.de/kunden/tools_fuer_access.php gibt es die “Programmer´s Libaries”, welche die oben genannten OCX - Steuerelemente zur Laufzeit über VBA-API erzeugen.
Controls bei vbAccerlerator.com
Index der Controls bei: vbAccelerator
um ActiveX Steuerelemente unter Windows Vista zu registrieren müssen Sie als Administrator angemeldet sein.
Falls die Registrierung mittels "Start" / "Ausführen" / "regsvr32.exe Control.ocx" scheitert müssen Sie folgende Schitte ausführen:
Geben Sie unter "Start" / "Ausführen" secpol.msc ein und bestätigen Sie mit Enter.
Im darauf folgenden Fenster "Lokale Sicherheitsrichtlinie" wählen Sie in der Baumansicht:
- Sicherheitseinstellungen
- Lokale Richtlinien
- Sicherheitsoptionen
(Klicken Sie auf das Bild um es zu vergrössern)
Wählen Sie bei allen Sicherheitseinstellungen zur Benutzerkontensteuerung (bis auf "Alle Administratoren im Administratorbestätigungsmodus ausführen":
- Deaktviert bzw.
- ohne Eingabeaufforderung
Alternativ können Sie, zur manuellen Registrierung ,die UAC temporär ausschalten ( "Start" / "Systemsteuerung" / "Benutzerkonten" / "Benutzerkontensteuerung ein- oder ausschalten" / Haken entfernen aus: "Benutzerkontensteurung verwenden, um zu Schutz des Computers beizutragen"
Auch danach ist ein Neustart des Computers notwendig.
Registieren Sie das ActiveX Control mittels "Start" / "Ausführen"
Anschließend sollten Sie folgende Meldung erhalten: