Alles verschwindet im Hidemode !

Hallo zusammen, ich habe den unter Access angegebenen Vorschlag zum Ausblenden von Access ausprobiert. Formular geht auf und Access (Hauptfenster) verschwindet, super so wollte ich es, aber, wenn ich ein weiteres Formular über das Hauptformular aufrufe, ist alles weg. Access nur noch über Taskmanager zu beenden. Info: Alle Formulare stehen auf Popup „ja“.
Habe folgenden Code benutzt:

Const SW_HIDE = 0
'in A00 ist dazu noch nötig:
Const SW_NORMAL = 1

Private Declare Function ShowWindow Lib „user32“ _
(ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Private Sub Form_Load()
Dim hWindow As Long
Dim nResult As Long
Dim nCmdShow As Long
hWindow = Application.hWndAccessApp
nCmdShow = SW_HIDE
nResult = ShowWindow(ByVal hWindow, ByVal nCmdShow)
Call ShowWindow(Me.hwnd, SW_NORMAL)
End Sub

Vielen Dank schon einmal !!!
Gruß
Thomas

P.S. Ich habe Access 2007

Hi Thomas,
An welcher Stelle hast du den code eingebunden?

Gehe ich recht in der Annahme, dass Du die Access Grundfunktionen ausblenden willst, damit die User keinen Unfug anstellen? Wenn es nur darum geht, brauchst Du keinen Code. Leider habe ich gerade keine Access Version hier, aber Du kannst die Datenbank über die Optionen automatisch ohne Navigationsbereich öffnen lassen. Unter „aktuelle Datenbank“ kannst Du das Formular wählen, dass geöffnet werden soll. Dann „Navigationsbereich anzeigen“ deaktivieren. Die Access Grundfunktionen sind dann nur sichtbar, wenn Du diese mit gleichzeitig gedrückter linker shifttaste öffnest. Dann sollte alles laufen. Hilft Dir das?

Ich möchte nichts anderes als das Access nicht sichtbar ist wenn ich die Datenerfassung mache, sondern nur das Formular angezeigt wir. Ist ja auch so beim starten, aber wenn ich etwas anklicke ist alles weg. Das Startformular ist eine Art Auswahlmenü. Gruß Thomas

Hi Thomas,
An welcher Stelle hast du den code eingebunden?

Den ersten teil:
Const SW_HIDE = 0

'in A00 ist dazu noch nötig:
Const SW_NORMAL = 1

Private Declare Function ShowWindow Lib „user32“ _
(ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

setzte ich unter VB auf dem Hauupformular.

den zweiten teil:

Private Sub Form_Load()
Dim hWindow As Long
Dim nResult As Long
Dim nCmdShow As Long
hWindow = Application.hWndAccessApp
nCmdShow = SW_HIDE
nResult = ShowWindow(ByVal hWindow, ByVal nCmdShow)
Call ShowWindow(Me.hwnd, SW_NORMAL)
End Sub

setzte ich unter Eigenschaften des Formulars „Beim Öffnen“ als Ergebnisprozedur ein.

Wetten das ist falsch , lol

Gruß
Thomas

Aus welchem Grund Du nur das Formular anzeigen möchtest ist ja eigentlich auch nebensächlich. Ich empfehle Dir die oben genannte Methode. Den Code solltest Du dann verschwinden lassen.(Vorsichtshalber irgendwo als Text sichern).

Der Code, den Du da benutzt, verrät mir nicht, mit welchem Ereignis er ausgelöst wird. Aber wenn er mit jedem laden eines beliebigen Formulares ausgelöst wird, hast Du das Problem schon auf der Hand.

Du kannst testweise mal den Code auf ein anderes Ereignis legen z.B. einen eigenen Button. Passiert dann dasselbe ist der Code schuld.