Ich starte die Datei TEST.MDB.
Dann gehe ich über Menü Extras - Start und mache das
Häkchen raus bei "Datenbankfenster anzeigen" und
Häkchen raus bei "Access Spezialtasten verwenden"
Jetzt kann ich zwar die Anzeige des VBA Codes verhindern,
aber schließe ich die DB und öffne sie über Datei-Öffnen, bleibt sie ungeöffnet stehen,
weil das Autoexec Makro nicht ausgeführt wird.
Warum nicht?
Ist doch komisch. Wenn ich auf die TEST.MDE einen Doppelklick mache,
wird das Autoexec doch auch ausgeführt.
Es sind jetzt nämlich alle Tabelle, Formulare...etc..etc.. zu sehen...
Das wollte ich auch verhindern.
Kann ich das auch noch irgendwo einstellen?
Gruß Achim
Hallo Achim,
was du beschreibst ist schwer nachvollziehbar, so sollte das jedenfalls nicht laufen.
Was macht denn dein AutoExec-Makro? Hast du kein Start-Formular?
Jetzt verstehe ich dich nicht.
Mein Autoexec macht folgendes:
Öffen Formular
Maximieren
Mehr nicht.
Ich dachte, eine MDE ist eine DB, die man nicht mehr einsehen kann...
Nein, das ist nicht zutreffend, das einzige was du dort nicht mehr einsehen kannst, ist der VBA-Code und die Entwürfe von Formularen und Berichten, wenn diese VBA-Code enthalten.
Okay, kommen wir zurück zur Ausgangsfrage.
Was muss ich wo tun, damit auch das nicht mehr zu sehen und
vor allem nicht editierbar ist?
Ich habe den Eindruck, du vermischst hier zwei verschiedene Fragen auf missverständliche Weise.
Zitataber schließe ich die DB und öffne sie über Datei-Öffnen, bleibt sie ungeöffnet stehen,
weil das Autoexec Makro nicht ausgeführt wird.
Was hat das AutoExec-Makro damit zu tun, dass die Starteinstellungen ignoriert werden, obwohl die Spezialtasten abgeschaltet sind?
Und was hat das Ganze mit einer MDE-Datei zu tun?
Ich weiß nicht, was ich hier falsch mache.
Ich habe ständig das Gefühl, dass meine Ausgangsfrage weggeschoben wird mit komplizierten Gegenfragen, die das Thema nicht mehr betreffen.
Ich arbeite fast ausschließlich mit Excel. Hier ist es möglich eine erstellte Datei so zu schützen, dass das gesamte geistige Eigentum unsichtbar bleibt.
Und genau das ist meine Ausgangssituation, die ich aber nicht hinbekomme.
Vielleicht kann man eine Access DB gar nicht vollständig schützen.
Im Moment habe ich es herausgefunden,
dass man in einer MDE Datei keinen VBA Code mehr sehen kann,
und der Entwurf des Formulars gesperrt ist.
Aber ich kann immer noch die Tabellen und Abfragen einsehen.
Daher nochmal ganz unkompliziert gefragt.
Was muss ich noch machen und wo einstellen,
damit die DB vom User nur als reine Informations-DB genutzt werden kann?
Der User darf nichts ändern, nichts einsehen können.....
Danke euch für Hinweise dazu.
Gruß Achim
Hi,
wenn Du die Datenbearbeitung (inkl. nur lesen) via Formular machst und
wenn das Berechtigungsystem von access verwendest, kannst Du steuern, dass das Programm nicht mehr verlassen werden kann und damit auch keine Tabellen/Abfragen/Berichte bearbeitet werden können.
Das Datenbankfenster aus-/einblenden: siehe DonKarl 6.2
Harald
Zitat von: bahasu am Dezember 18, 2014, 10:01:03
Das Datenbankfenster aus-/einblenden: siehe DonKarl 6.2
Was bedeutet das DonKarl 6.2?
Hallo,
ZitatWas bedeutet das DonKarl 6.2?
das ist ein Hinweis auf die FAQ von DonKarl
http://www.donkarl.com/faq/FAQListe.htm
Okay, gefunden. Sieht kompliziert aus und ich habe nichts verstanden.
Ich denke, bevor ich hier noch mehr kaputt mache an meiner DB, belasse ich es und schütze halt nur den VBA Code und den Formularentwurf.
Ich bin halt immer in meiner Excel-Denke und verstehe halt nicht, warum das in Access so kompliziert ist....
Dennoch danke ich euch allen für die Hinweise...
Gruß Achim
Hallo,
das ist nicht kompliziert, das ist halt nur anders zu lösen - ist ja auch eine andere Applikation.
Wenn du in deinem Startformular ins Ereignis 'Beim Öffnen' folgendes einträgst ...
DoCmd.SelectObject acTable, , True
RunCommand acCmdWindowHide
... sollte das Datenbankfenster ausgeblendet werden, die Access-Objekte werden dann nicht mehr angezeigt.
Versuch das mal an einer KOPIE der Original-MDB und erstelle dann eine neue MDE daraus und teste mal.
HTH
Hat leider nicht geklappt, bzw. ich habe es mal wieder falsch verstanden.
Private Sub Form_Open(Cancel As Integer) 'Beim Öffnen des Formulars
DoCmd.SelectObject acTable, , True
RunCommand acCmdWindowHide
Form_Bearbeitungsdaten.Geaendert_am1 = DLookup("Last_Change", "tbl_Last_Change")
Form_Bearbeitungsdaten.Geaendert_am2 = DLookup("Last_Change", "tbl_Last_Change")
End Sub
Ich habe auch mal probiert den Code in das Ereignis "Beim Laden".
Anschließend habe ich es mal in beide Ereignisse gesetzt.
Auch keine Änderung.
Private Sub Form_Load() 'Ereignis beim Laden des Formulars
DoCmd.SelectObject acTable, , True
RunCommand acCmdWindowHide
End Sub
Ich habe die Codeteile eingesetzt.
Menü Extras - Start
Häkchen raus bei "Datenbankfenster anzeigen" und
Häkchen raus bei "Access Spezialtasten verwenden"
MDE Datei erstellt.
MDE Datei gestartet.
Menü Datei - Schließen.
Menü Datei - Erster Eintrag in der zuletzt verwendeten genommen...
DB öffnet und alles ist zu sehen.....Alle Tabellen, Abfragen....etc...etc..
:-\
Hallo,
dann lass mal versuchsweise das Autoexec-Makro weg, du kannst ja auch über die Optionen angeben welches Formular beim starten der Datenbank angezeigt werden soll.
Hab das Autoexec mal deaktiviert. Aber das brachte auch keine Änderung.
Andererseits ist durch das Ausblenden des VBA,
und eine Deaktivierung des Entwurfs durch die MDE Datei
die Einstellung DS Löschen auf NEIN
sowie Einstellung DS bearbeiten im Formular
bereits viel geschützt.
Hmm... ich versteh's trotzdem nicht, ich hab' das mit Acc2010 und Acc2013 durchgespielt - ohne Probleme.
Mit Acc2003 kann ich's leider nicht testen, dieses Urgestein habe ich leider nicht(mehr)
@accessy:
Welche Access-Version setzt du denn eigentlich ein? Ich finde nirgendwo einen Hinweis darauf.
Wenn du in den Start-Optionen den Haken bei "Datenbankfenster anzeigen" rausnimmst und die DB neu startest, so sollte das Datenbankfenster nicht von alleine gezeigt werden, es sei denn, es wird ein entsprechender VBA-Befehl ausgeführt. Das Rätsel wird wohl nur gelöst werden können, wenn man mal selbst einen Blick auf deine DB werfen könnte.
Access 2003 habe ich in Gebrauch. Sorry, dachte, ich hätte es erwähnt.