Access Hilfe funktioniert nur bedingt

oli-zapp, Sonntag, 18.02.2007, 16:43 (vor 4259 Tagen)

Hallo und Guten Tag,
zur Vorgeschichte meines Tun´s sei hier kurz erwähnt:
...ich kenne mich nur bedingt mit vba Programmierung aus, jedoch ganz gut mit Access.
...ich bin auf dem Gebiet der Hilfe völliger Neuling.

Ich habe angefangen mit dem Tool HelpNDoc für meine Sammeldatenbank (Basis Ac2000) eine eigene Hilfestellung zu schreiben. Ausgehend von einem Bericht im

"Der Access Berater". Worin sehr detailiert beschrieben wird, wie so etwas zu erstellen ist um dann mit dem HTML Help Workshop Programm von Microsoft zu
kompilern. Im Access Berater wird allerdings nur erwähnt wie auf die Formulare und deren Steuerelemente verwiesen wird, ich möchte aber auch auf die gesamte
Hilfe verweisen können. Drückt man ausserhalb der Formulare bzw.Steuerelemente auf F1 kommt wie erwartet die Access Hilfe zum Vorschein. Hier sollte natürlich dann auch meine eigene Hilfe erscheinen.

Wie gesagt, ich habe dann erst einmal für zwei meiner Formulare und deren Steuerlemente probeweise mit der Erstellung der Hilfe begonnen.

Die Struktur der Hilfe:

1)Willkommen = ContextID 1
2)Erklärungen = ContextID 100

3)Ordner Formulare keine ID
3.1)Formular Hauptmenü = ContextID 1000
4.1)Formular Aufnahmeorte = ContextID 5100
4.1a)Feld Land ContextID = 5101
4.1b)Feld Stadt ContextID = 5103

Meine vorgehensweise lt. Access Berater wie oben schon beschrieben, in jedem Formular und in jedem Steuerelement wird die jeweilige ContextID hinterlegt, in jedem Formular wird auf : "ZappaDTB-Hilfe.chm" verwiesen.
Somit hat alles schön funktioniert vom jeweiligen Steuerfeld aus F1 gedrückt geht die dazugehörende Hilfe zum Feld auf und der Verweis zur Hilfe des
Formulars funktioniert auch, ausserhalb oder bei deaktiviertem Steuerfeld geht die Hilfe zum aktivierten Formular auf.

Zum Glück habe ich diese super Seite entdeckt, ich habe sofort alles wie beschrieben eingebaut, den VBA Code und auch das Makro wie beschrieben geschaltet.

Klappt alles bestens, nur folgendes passiert bei meiner Anwendung:

wenn ich wie vorher ausserhalb eines Steuerfeldes z.B. im Formular Aufnahmeorte, F1 drücke, öffnet sich nun wie gewünscht meine Hilfe, aber mit dem Willkommen Fenster und nicht mit dem eigentlich gewollten "Formular Aufnahmeorte" contextID 5100, das schließlich noch aktiv ist.

1)
Kann dem VBA Code, der wie ich denke nur auf Steuerlemente programmiert ist:

Set ctlCurrentControl = Screen.ActiveControl
strControlName = ctlCurrentControl.HelpContextId

auch eine Erweiterung auf Formulare hinzugefügt werden, sodass auch die Hilfe zum Formular angezeigt wird, oder ist da bei meinem Vorgehen etwas falsch gelaufen>

2)
Es kann auch vorkommen dass in meiner Anwendung vorübergehend kein Fenster Aktiv ist, dies verursacht beim drücken von F1 einen Laufzeitfehler "2474" in

Codezeile:
Set ctlCurrentControl = Screen.ActiveControl
kann man den code irgendwie ergänzen, dass trotz deaktivierten Formularen die Hilfe aufgeht>

Ich hoffe ich habe mich einigermaßen verständlich erklären können , und freue mich sehr wenn jemand eine Idee hat warum 1) oder und 2) nicht funktioniert.

Vielen Dank im Voraus, helau...
Euer oli-Zapp

powered by my little forum