Access 2010-VBA : OpenForm in acHidden, dann Speichern funktioniert nicht
Ich versuche ein Formular öffnen, ändern Sie einige Eigenschaften, speichern, schließen Sie dann die form; alle verborgenen Nutzers.
Aus irgendeinem Grund, wenn ich offene form mit acHidden-Modus, wirft er mir eine Fehlermeldung 29068 kann nicht abschließen dieses Vorgangs. Man muss halt den code, und versuchen Sie es erneut.
Hier ist der code :
DoCmd.OpenForm "frmProsContractorList", acDesign, , , , acHidden
DoCmd.Save acForm, "frmProsContractorList"
DoCmd.Close acForm, "frmProsContractorList"
Wenn ich acWindowNormal statt acHidden, keine Fehler.
Wenn ich Speichern Methode, keine Fehler.
Wie es scheint, Öffnenformular mit acHidden und Save-Methode nicht funktioniert.
Kann jemand überprüfen, wenn der obige code funktioniert, und wie Sie zu beheben?
WORK-AROUND : unter Werke
DoCmd.OpenForm "frmProsContractorList", acDesign, , , , acHidden
DoCmd.Close acForm, "frmProsContractorList", acSaveYes
http://msdn.microsoft.com/en-us/library/ff192860(v=office.14).aspx
- Was versuchen Sie zu tun, auf die form, die erfordert, dass Sie es in der Entwurfsansicht öffnen-Modus anstelle des normalen?
- Sperren/freigeben der einige Felder je nach Benutzer. Ich weiß, es ist ein schlechtes design, aber der obige code funktioniert auf Access97. Versuchen, zu aktualisieren, zu Access2010.
- Sperren Sie,/ermöglichen Sie Textfelder, während das Formular geladen wird. Es gibt keinen Grund zu gehen, Sie in den Entwurfsmodus und speichern es oder bin ich etwas fehlt?
- Wenn Sie das Formular öffnen das nächste mal, Eigenschaften wieder auf Standard zurück.
- Warum ist das eine schlechte Sache? Sie sagte, dass es änderungen auf der Grundlage, die der Benutzer korrekt ist? Es sei denn, der Benutzer die volle version von access statt der Laufzeit, würden Sie nicht sehen, den Unterschied zwischen Sie die Einstellung auf ein
Form_Load
vs haben es gespeichert, auf das Formular selbst. Ich persönlich verwalten Sie es wie dieses. Edit: Auch, wenn Sie die volle version von access, dann macht es keinen Unterschied zu "beschränken" die Felder eh wie Sie können tun, was Sie Lust haben. - Ich vollkommen verstehen, was du sagst und ich Stimme mit Ihnen überein. Aber Rahmen des Projekts ist es, nur den port über Access2010 mit minimalen änderungen am code. Es ist bereits entworfen worden, ändern Sie die Formular-Eigenschaften alle vorne, nicht im load-Ereignis. Wirklich zu schätzen Ihre Hilfe...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie nicht Bearbeiten, ein Formular die Eigenschaften und dann das Formular speichern. Sie können jedoch, Bearbeiten eines Formular-Eigenschaften ohne das Formular zu öffnen. Wenn Sie erklären ausführlich, was Sie zu tun versuchen, ich kann Bearbeiten diese Antwort Ihnen sagen, wie es erzielt. Bis dann, die Antwort ist, "Es kann nicht so gemacht, wie du es tust."
BEARBEITEN: Sie können einfach legen Sie im Feld Eigenschaft Enabled auf True oder False, Load-Ereignis des Formulars.
d.h.