Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Laufzeitfehler 2110
Gehe zu Seite 1, 2  Weiter
zurück: Tooltip in Datenblattansicht weiter: Formular zeigt nicht alle Daten an Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Offen Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
flo_wn
Office-Anwender


Verfasst am:
13. Okt 2009, 16:10
Rufname: Flo

Laufzeitfehler 2110 - Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Ich habe folgendes Problem:
Ein Formular besteht aus einem HF und einem UFO. Im UFO werden die Daten der Tab2 eingegeben, in HF Daten der Tab1. Das ganze funktioniert ganz gut, allerdings habe ich eine Prozedur eingebaut, damit im HF der Name eingegeben werden muss, bevor der DS mittels Button gespeichert wird. Das ganze funktioniert auch, allerdings kann ich den Fokus vom UFO nicht mehr ins HF verlegen und daher kann man, nachdem die "Fehlerprozedur" aufgerufen wurde keinen Namen mehr eingeben (man ist in einer quasi-Endlos-Schleife). Die Fehlerprozedur wird aufgerufen im Sub-Form Before Update des UFOs bzw im Script des Buttons. Vielleicht hat wer einen Lösungsvorschlag für mich? Bin am Verzweifeln Embarassed

Code:
If Nz(Me!Kombinationsfeld6,"") = "" Then
Cancel = True
MsgBox "Bitte wählen Sie einen Namen aus!"
Me.Parent.Form!Kombinationsfeld6.SetFocus
Else
DoCmd.GoToRecord,,acNewRec
End If


(oder gibt es die Möglichkeit die "Übernahme" des Datensatzes im UFO zu verhindern, sodass die Übernahme beider DS gleichzeitig mit Drücken des Buttons am HF erfolgen muss (wenn man im UFO im letzten Feld Enter drückt wird DS übernommen, alle anderen Möglichkeiten sind ausgeblendet)?

lg

Flo
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Okt 2009, 16:42
Rufname:
Wohnort: NRW


AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo,

ich verstehe nicht worauf du hinaus willst, wo willst du was prüfen?
Hast du in beiden Formulare ein Kombinationsfeld6 und wozu dient es?

_________________
Gruß MissPh!
flo_wn
Office-Anwender


Verfasst am:
13. Okt 2009, 17:53
Rufname: Flo

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Natzürlich hat sich wieder ein Tippfehler eingeschlichen. Es muss heißen:
Code:
If Nz(Me!Parent.Kombinationsfeld6,"") = "" Then


Damit wird das Feld abgefragt in dem der Name stehen sollte. Ist es leer kommt die Aufforderung einen Namen einzugeben. Der Code den ich reingestellt habe funktioniert auch. Das Problem ist, dass ich danach nicht mehr ins Hauptformular komme.

lg

Flo
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Okt 2009, 17:57
Rufname:
Wohnort: NRW

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Da ist schon wieder ein Schreibfehler drin, es muss heißen: Me.Parent!Kombinationsfeld6. Rolling Eyes

Ansonsten ist es natürlich höchst ungeschickt, die Vollständigkeit des HF erst im UF zu prüfen. Das solltest du vor Aktualisierung im HF tun.

_________________
Gruß MissPh!
flo_wn
Office-Anwender


Verfasst am:
13. Okt 2009, 18:07
Rufname: Flo


AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Ups Embarassed Wie gesagt das funktioniert ja eh Wink

Du meinst ich sollte HF und UFO umdrehen? Aber kann man mit setfocus nicht vom Ufo ins HF zurückzeigen?

lg

Zitat:
bzw: das Formular ist nämlich so aufgebaut, dass man zuerst ins ufo und dann ins hf eingibt...
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Okt 2009, 18:13
Rufname:
Wohnort: NRW

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Nein, das meinte ich nicht. Du sollst halt die Vollständigkeit der Eingabe im HF prüfen ehe du es verlässt, um im UF Daten einzugeben.

Du siehst doch, dass du aus der Nummer nicht mehr rauskommst, dazu gibt es keine Lösung.

_________________
Gruß MissPh!
flo_wn
Office-Anwender


Verfasst am:
13. Okt 2009, 18:17
Rufname: Flo

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hmm

Naja, danke für die Antwort. Dann werde ich wohl das Formular umbauen...

lg
MissPh!
Office-VBA-Programmiererin


Verfasst am:
13. Okt 2009, 21:12
Rufname:
Wohnort: NRW

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Warum willst du denn das Formular unbedingt umbauen? Was ist der Hintergrund der ganzen Sache?
Welche Beziehung/Abhängigkeit gibt es zwischen dem Kombifeld (bzw. dem daran gebundenen
Datenfeld) und dem Unterformular?

Erkläre doch bitte den Grund für dein Vorhaben, dann findet man sicher auch eine Lösung.

_________________
Gruß MissPh!
Gast



Verfasst am:
13. Okt 2009, 22:03
Rufname:

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

In dem Formular sollen Kurse eingegeben werden (im Unterformular) und dann im Hauptformular der/die Teilnehmer dazu gespeichert werden. In der einen Tabelle wird der Kurs mit Daten gespeichert, in der anderen Tabelle über die PersNr welche Person welchen Kurs (IndexNr der anderen Tabelle) besucht. Die Beziehung stellt also das Indexfeld der Kurstabelle mit einem Feld in der Tabelle 1 (Kurs) dar. Dieses Formular funktioniert ja auch, solange man nicht vergißt den Namen (aus dem Kombifeld im HF) zu speichern.
Zum Umbauen: Ich habe mir gedacht das Formular einfach "zu teilen": zuerst gibt man den Kurs ein, danach klickt man auf einen Button (in einem kleinen Formular) "weiteren Kurs eingeben" oder "Person eingeben" und kommt dann zum zweiten Formular in welchem man dann auch gleich mehrere Personen pro Kurs speichern kann...

lg

Flo
MiLie
kein Office- VBA- Programmierer


Verfasst am:
13. Okt 2009, 22:09
Rufname: Micha
Wohnort: Chemnitz

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo,

du kannst die Formulare umdrehen wie du willst, wenn du beim verlassen des einen prüfst ob das andere vollständig ist kommst du nicht weiter. Du verhinderst das Verlassen des einen Formulars und willst aber gleichzeitig das es verlassen wird um das andere Formular zu vervollständigen, wie soll das gehen. Dabei spielt keine Rolle, welches HF und welches UF darstellt.

_________________
Viele Grüße

Micha

Schreibfehler die Ihr findet, könnt Ihr behalten
MiLie
kein Office- VBA- Programmierer


Verfasst am:
13. Okt 2009, 22:21
Rufname: Micha
Wohnort: Chemnitz

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo,

drei Möglichkeiten

(1)im Hauptformular die Kurse als einzelansicht
im UF als Liste die Kurszuordnungstabelle verknüpft über den Kursschlüssel und als Kombifeld die Personen aus der PersonenTabelle.
--> Im hf Kurs wählen und im UF die Personen aus Kombifeld wählen, die zu diesen Kurs gehören.

(2) Im HF die Personentabelle als Einzelansicht
im UF wieder die Kurszuordnungstabelle und diesmal verknüpft über den Personenschlüssel, dann wieder ein Kombi diesmal mit Kurse aus Kurstabelle
--> Person im HF wählen und im UF aus Kurstabelle wählen, an welchen Kursen die Person teilnehmen soll

(3) nur HF mit Kurszuordnungstabelle als Liste
2 Kombifelder , ein basieren auf Personentabelle und ein auf Kurstabelle
--> 1. Kombi Person wählen, 2. Kombi Kurs wählen, woe diese Person teilnimmt.

in allen drei Fällen kannst du einen gemeinsamen Index in der Zuordnungstabelle über die Fremdschlüsselfelder der Personentabelle und Kurstabelle legen, damit keine Person an einen Kurs doppelt teilnehmen kann.

_________________
Viele Grüße

Micha

Schreibfehler die Ihr findet, könnt Ihr behalten
flo_wn
Office-Anwender


Verfasst am:
13. Okt 2009, 22:30
Rufname: Flo

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Danke für die Antworten! Ich habe auch gemeint, dass ich gar nicht mehr mit HF und UFO arbeite, sondern hinter einander zwei HF aufrufe. Dieses Formular soll auch ermöglichen neue Kurse einzugeben (das Formular für bestehende gibt es bereits). Wenn der neue Kurs eingegeben ist soll der Benutzer die Möglichkeit bekommen einen zusätzlichen neuen Kurs einzugeben, oder für den soeben eingegeben Kurs Personen einzubuchen (oder abzubrechen). Das zweite aufzurufende Formular ist ein bereits bestehendes, dh. ich muss nur an dem einen zur Kurseingabe basteln. Ich denke mal so sollte es auch für den Benutzer möglichst einfach funktionieren.

lg

Flo
flo_wn
Office-Anwender


Verfasst am:
14. Okt 2009, 12:11
Rufname: Flo

AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Ich bins wieder einmal! Embarassed

Ich habe wie gestern angekündigt das Formular "aufgeteilt". D.h. zuerst gibt man in einem Formular einen Kurs ein, danach klickt man auf einen Button, ein zweites Formular wird geöffnet und man kann zu dem gerade eingegebenen Kurs eine Person speichern. Allerdings gelingt es mir nicht die KursId in das zweite Formular mitzuschicken. Ich habe schon einiges versucht z.B.
Code:
Forms![Name2.Form]![IDFeld2.Form] = Me.[IDFeld1.Form]
Forms![Name2.Form]![IDFeld2.Form].Requery

Dieser Code wird beim Button-Click mitgeschickt.

da kommt allerdings beim Laden des 2. Formulars die Fehlermeldung:

Diese Datensatzgruppe kann nicht aktualisiert werden

Jetzt habe ich es mit einer globalen Variable (in die das IDFeld übergeben wird) und einem Filter versucht (der "Bei Laden" gestartet wird), das funktioniert aber auch nicht (er zeigt dann nur ein komplett leeres Formular an (also auch ohne Felder), nur der Formularkopf ist wie er sein soll.

Wie kann ich das lösen? Gibt es vielleicht eine bessere Möglichkeit den Filter zu starten? Der Wert der Variable stimmt jedenfalls, das habe ich überprüft.

lf

Flo
MissPh!
Office-VBA-Programmiererin


Verfasst am:
14. Okt 2009, 12:47
Rufname:
Wohnort: NRW

Re: AW: Laufzeitfehler 2110 - Re: AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!
flo_wn - 14. Okt 2009, 12:11 hat folgendes geschrieben:
Ich habe schon einiges versucht z.B.
Code:
Forms![Name2.Form]![IDFeld2.Form] = Me.[IDFeld1.Form]
Forms![Name2.Form]![IDFeld2.Form].Requery
Sind das die tatsächlichen Objekt- und Steuerelementnamen???
Zitat:
Diese Datensatzgruppe kann nicht aktualisiert werden
Wie lautet die Datenherkunft des Formulars?
Zitat:
Wie kann ich das lösen? Gibt es vielleicht eine bessere Möglichkeit den Filter zu starten?
Die einfachste Lösung dürfte sein, den Filter beim Öffnen des Formulars zu übergeben. Schau dir die Syntax der OpenForm-Methode in der Access-Hilfe an.

Das Filtern nützt dir jedoch gar nichts bei der Eingabe neuer Kursteilnehmer. Wie willst du die Kursnr. in den Datensatz bekommen?!
Hier ist die Haupt-/Unterformular-Konstruktion deutlich vorteilhafter, da Access die Weitergabe der Verknüpfungsschlüssel unterstützt. Du musst dabei nur die richtige Reihenfolge beachten:
- Pflegen Kursdaten und Kursteilnehmer --> HF Kursdaten, UF Teilnehmer
- Pflegen Teilnehmer und belegte Kurse --> HF Teilnehmer, UF Kurse
Du brauchst also je ein HF/UF für jede Zielrichtung.

_________________
Gruß MissPh!
flo_wn
Office-Anwender


Verfasst am:
14. Okt 2009, 12:51
Rufname: Flo


AW: Laufzeitfehler 2110 - AW: Laufzeitfehler 2110

Nach oben
       Version: Office XP (2002)

Hallo!

Danke für die Antwort. Die Eingabe neuer Kursteilnehmer ist nicht notwendig (die werden aus einer anderen Datenbank übernommen). Das Formiular basiert auf einer Abfrage. Wobei ich im Formular Filter verwende, die durchaus funktionieren. Das mit dem OpenForm habe ich auch schon versucht (bzw. bin ich gerade dabei), allerdings bin ich scheinbar zu dämlich eine Variable zu übergeben...

lg

Flo
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler 3071 7 Ramon2012 198 30. Jan 2012, 19:51
KlausMz Laufzeitfehler 3071
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler 94 13 noreia 413 11. Dez 2008, 09:24
noreia Laufzeitfehler 94
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler 3109, Datensatz nicht zu löschen 0 Mitch26 407 31. Okt 2008, 18:45
Mitch26 Laufzeitfehler 3109, Datensatz nicht zu löschen
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler bei Übertrag in Listenfeld 1 Gast 510 01. Okt 2008, 22:20
MiLie Laufzeitfehler bei Übertrag in Listenfeld
Keine neuen Beiträge Access Formulare: Laufzeitfehler 3078 1 Gast 385 04. Sep 2008, 18:41
JörgG Laufzeitfehler 3078
Keine neuen Beiträge Access Formulare: Laufzeitfehler '7874': kann Objekt nicht finden obwohl da 1 friedrichshain 1419 11. Apr 2008, 18:09
rita2008 Laufzeitfehler '7874': kann Objekt nicht finden obwohl da
Keine neuen Beiträge Access Formulare: Access 2003 Laufzeitfehler 438 Objekt wird nicht gefunden 1 Arno Lesmeister 1309 15. Mai 2007, 17:31
rita2008 Access 2003 Laufzeitfehler 438 Objekt wird nicht gefunden
Keine neuen Beiträge Access Formulare: Laufzeitfehler 2164 2 rabie 2034 09. Feb 2007, 09:16
rabie Laufzeitfehler 2164
Keine neuen Beiträge Access Tabellen & Abfragen: Laufzeitfehler 3001 1 luckypunch 591 23. Jan 2007, 12:19
JörgG Laufzeitfehler 3001
Keine neuen Beiträge Access Formulare: Laufzeitfehler 2110 4 kijutz 5834 13. Okt 2006, 09:46
Willi Wipp Laufzeitfehler 2110
Keine neuen Beiträge Access Formulare: Was heist "Laufzeitfehler 2448" 13 Diego12 8462 19. Sep 2006, 12:30
lothi Was heist "Laufzeitfehler 2448"
Keine neuen Beiträge Access Formulare: Problem mit Filterlänge (Laufzeitfehler 7769) 5 maila 1515 11. Sep 2006, 19:50
Nouba Problem mit Filterlänge (Laufzeitfehler 7769)
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML Forum