Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Bei Auswahl aus PullDown Eingabe prüfen
zurück: Anklickkästchen soll sich auf eine andere Tabelle beziehen weiter: Im Ausdruck stimmt ein Datentyp nicht überein Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
07. Okt 2006, 11:23
Rufname:
Wohnort: Siegburg City

Bei Auswahl aus PullDown Eingabe prüfen - Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Ihr super-Experten! Surprised)

also ich habe ein Formular mit einem Unterformular. In dem HF kann man über ein PullDown 4 unterschiedliche Stati auswählen: "in Bearbeitung"; "abgeschlossen"; "abgelehnt"; "*leer*"

Es geht hierbei nur um den Status abgeschlossen. Wenn ein Datensatz abgeschlossen wird, ist es erforderlich in allen Feldern im Unterformular die angelegt wurden ein Datum einzutragen. Ist auch nur eines der Felder leer und somit eigentlich noch offen, darf der Status "abgeschlossen" nicht auswählbar sein. Am liebsten hätt ich dann eine Meldung: " Es sind nicht alle Unterdatensätze bearbeitet worden. Bitte geben Sie ein Enddatum ein" ..oder so ähnlich.

Nun seit ihr gefragt...Wie setzt ich das um? Wie gesagt es handelt sich hierbei um ein Unterformular was geprüft werden soll... Verbunden sind HF und UF mit der Indexnr.

Halt große Stücke auf euch und freu mich auch hier schnell ne Lösung zu bekommen Smile Smile

LG Smilla
Nouba
nicht ganz unwissend :)


Verfasst am:
07. Okt 2006, 11:59
Rufname:
Wohnort: Berlin


AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Smilla,

Du kannst das Recordset des Unterformulars im Vor Aktualisieren Ereignis des Kombifelds cboStatus clonen und nach dem ersten Datum mit Null-Wert suchen. Wird dieses nicht gefunden, so darf der Status geändert werden.
Code:
Private Sub cboStatus_BeforeUpdate(Cancel As Integer)
  Const csMsg           As String = _
        "Jeder Datensatz im Unterformular benötigt ein " _
      & "Enddatum, um den Status ""abgeschlossen"" setzen zu dürfen."

  If Me!cboStatus = "abgeschlossen" Then
    With Me!UF.Form.Recordset.Clone()
      .FindFirst "Enddatum Is Null"
      If Not .NoMatch Then
        MsgBox csMsg
        Cancel = True
        Me!cboStatus.Undo
        Me!UF.SetFocus
        Me!UF.Form.Bookmark = .Bookmark
        Me!UF.Form!EndDatum.SetFocus
      End If
    End With
  End If
End Sub

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
08. Okt 2006, 10:44
Rufname:
Wohnort: Siegburg City

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Nouba und vielen Dank,

mein Code sieht jetzt wie folgt aus:
Code:
Private Sub Status_interne_Kommunikation_BeforeUpdate(Cancel As Integer)
    Const csMsg  As String = "Jeder Datensatz im Unterformular benötigt " & _
                             "ein Enddatum, um den Status " & _
                             """abgeschlossen"" setzen zu dürfen."
   
    If Me!Status_interne_Kommunikation = "abgeschlossen" Then
        With Me!Erschienen_am!Platzierungsdetails.Recordset.Clone()
            .FindFirst "Erschienen_am Is Null"
            If Not .NoMatch Then
                MsgBox csMsg
                Cancel = True
                Me!Status_interne_Kommunikation.Undo
                Me!AG_ThemenmeldungPlatzierungsdetails.SetFocus
                Me!AG_ThemenmeldungPlatzierungsdetails.Form.Bookmark = _
                                                                     .Bookmark
                Me!AG_ThemenmeldungPlatzierungsdetails!Erschienen_am.SetFocus
            End If
        End With
    End If
End Sub
Zur Erklärung:
"Status_interne_Kommunikation" ist das Feld in der Tabelle "Themensammlung" bzw. im HF
"Erschienen_am" das Feld im UF (AG_ThemenmeldungPlatzierungsdetails) bzw. Tabelle Platzierungsdetails, welches für jeden angelegten Unterdatensatz ausgefüllt werden muss.

Was mache ich falsch, bei mir erscheint immer eine Fehlermeldung, dass er das Feld Erschienen_am nicht finden kann?

Viele Grüße Smilla
Nouba
nicht ganz unwissend :)


Verfasst am:
08. Okt 2006, 11:51
Rufname:
Wohnort: Berlin

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Smilla,

versuchs mal so.
Code:
Private Sub Status_interne_Kommunikation_BeforeUpdate(Cancel As Integer)
  Const csMsg           As String = _
        "Jeder Datensatz im Unterformular benötigt ein " _
      & "Enddatum, um den Status ""abgeschlossen"" setzen zu dürfen."

  If Me!Status_interne_Kommunikation = "abgeschlossen" Then
    With Me!AG_ThemenmeldungPlatzierungsdetails.Form.Recordset.Clone()
      .FindFirst "Erschienen_am Is Null"
      If Not .NoMatch Then
        MsgBox csMsg
        Cancel = True
        Me!Status_interne_Kommunikation.Undo
        Me!AG_ThemenmeldungPlatzierungsdetails.SetFocus
        Me!AG_ThemenmeldungPlatzierungsdetails.Form.Bookmark = .Bookmark
        Me!AG_ThemenmeldungPlatzierungsdetails!Erschienen_am.SetFocus
      End If
    End With
  End If
End Sub
AG_ThemenmeldungPlatzierungsdetails wäre der Name des Unterformularsteuerelements, der nicht identisch mit dem Namen des darin beherbergten Formulars sein muß.
_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
08. Okt 2006, 14:49
Rufname:
Wohnort: Siegburg City


AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hi,

also sooo einfach geht es dann doch nicht.
Ich habe hier mal eine Beispiel Datenbank hinterlegt: Status.zip

Das Problem ist doch ein wenig komplexer. Also ich habe Medien angelegt (siehst du ja in der Datenbank) die sich zwischen intern und extern unterscheiden. Danach geht auch der Status interne .. und externe ..

Also wie gesagt, wenn alle Medien die intern sind das Feld "Erschienen am" nicht ausgefüllt haben, kann der Status interne Kommunikation auch nicht auf "abgeschlossen" gesetzt werden. Genauso bei den externen Medien.
Hoffe ich habe es verständlich gemacht. Ich bekomme nämlich immer noch eine Fehlermeldung und weiß nicht was ich falsch mache Surprised(

Viele Grüße Smilla
Nouba
nicht ganz unwissend :)


Verfasst am:
08. Okt 2006, 15:18
Rufname:
Wohnort: Berlin

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Smilla,

im BeforeUpdate Event funktioniert der Wechsel ins Unterformular nicht und es wird der Fehler 2108 ausgelöst. Deshalb habe ich das Prozedere ins AfterUpdate Event des Steuerelements verfrachtet. Weil Du Leerzeichen Sad in Deinen Objektbezeichnern verwendest, müssen die Namen natürlich in eckige Klammerpaare eingeschlossen werden. Außerdem würde ich für ein Datum auch ein Feld vom Felddatentyp Datum/Uhrzeit veranschlagen.
Code:
Private Sub Status_intern_AfterUpdate()
  Const csMsg           As String = _
        "Jeder Datensatz im Unterformular benötigt ein " _
      & "Enddatum, um den Status ""abgeschlossen"" setzen zu dürfen."

  If Me![Status intern] = "abgeschlossen" Then
    With Me![Platzierungsdetails Unterformular].Form.Recordset.Clone()
      .FindFirst "[Erschienen am] Is Null"
      If Not .NoMatch Then
        MsgBox csMsg
        Me![Status intern].Undo
        Me![Platzierungsdetails Unterformular].SetFocus
        Me![Platzierungsdetails Unterformular].Form.Bookmark = .Bookmark
        Me![Platzierungsdetails Unterformular]![Erschienen am].SetFocus
      End If
    End With
  End If
End Sub

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
13. Okt 2006, 15:45
Rufname:
Wohnort: Siegburg City

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Nouba,

das klappt!

Aber ich habe ein Problem. Unterschied zwischen der Beispiel-Datenbank und meiner ist, dass das Feld Status_intern (bei mir ohne Leerzeichen ;o)) in einem PopUpFormular hängt das mit einzelnen Feldern verknüpft ist. In diesem Formular gibt es aber kein Unterformular. Wie kann ich denn die Tabelle/Formular einbeziehen, von der es abhängt bzw. in der gearbeitet wird?

Gebe ich dann statt Me![Textfeld] Me!FormularOderTabellenname![Textfeld]????

Danke!
Nouba
nicht ganz unwissend :)


Verfasst am:
13. Okt 2006, 23:56
Rufname:
Wohnort: Berlin

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo,

mit Forms!FormularName!FeldName kann man auf ein Steuerelement in einem anderen geöffneten Formular verweisen.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
15. Okt 2006, 14:00
Rufname:
Wohnort: Siegburg City

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hi Nouba,

sorry aber jetzt habe ich den Code angepasst:
Code:
Private Sub Befehl2_Click()
    DoCmd.OpenForm "AG_Themenmeldung", WhereCondition:=Filterbedingung()
    If Nz(Forms!AG_Themenmeldung![Status_interne_Kommunikation], "") & _
       Nz(Forms!AG_Themenmeldung![Status_externe_Kommunikation], "") <> "" Then
        DoCmd.OpenForm "AG_Themenmeldung", , , Filterbedingung(), _
                       acFormReadOnly, 1
      Else
        DoCmd.OpenForm "AG_Themenmeldung", , , Filterbedingung(), , 0
    End If
    DoCmd.Close acForm, "AG_SuchmaskeThemenmeldung"
End Sub
Beim Klicken scheint er mir das Formular "AG_Themenmeldung" zu öffnen, schließt es aber sofort und auch die Suchmaske (steht ja auch im Befehl) wird geschlossen. Also was ist falsch am Code, dass es eigentlich gar nicht geöffnet wird????

Danke für den entscheidenden Tipp Surprised)

Smilla
jens05
Moderator


Verfasst am:
15. Okt 2006, 19:53
Rufname:
Wohnort: ~~~~~

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Smilla,
was passiert im Form "AG_Themenmeldung" so beim öffnen?
Ereignis "Beim Öffnen" / "Beim Laden" .... ?

Hast du mal probiert das Form ohne Filterbedingung() zu öffnen?

_________________
mfg jens05 Wink
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
24. Okt 2006, 14:18
Rufname:
Wohnort: Siegburg City

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo Jens,

so sah mein Code aus bevor ich die Bedingung eingefügt habe und das klappt auch!
Code:
    'DoCmd.OpenForm FormName:="AG_Themenmeldung", _
                   WhereCondition:=Filterbedingung()
    'DoCmd.Close acForm, "AG_SuchmaskeThemenmeldung"
Nur wie gesagt, wollte ich da jetzt einbauen, dass er mir unter der Bedingung
Code:
Themensammlung.Status_interne_Redaktion isNull AND Themensammlung.Status_interne_Redaktion isNull
Then OpenForm FormName:="AG_Themenmeldung" ***im Bearbeitungstatus, sonst nur im Lesemodus***
Wie mach ich das??? Geht das überhaupt?

Viele Grüße Smilla
Willi Wipp
Moderator


Verfasst am:
24. Okt 2006, 15:46
Rufname:
Wohnort: Raum Wiesbaden

Re: Bei Auswahl aus PullDown Eingabe prüfen - Re: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hi Smilla,

Dir ist schon klar das die 1 hinter dem acFormReadOnly bedeutet,
das das Formular "Hidden" geoeffnet wird, oder?

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Smilla
Access-Fan ohne große Kenntnisse


Verfasst am:
30. Okt 2006, 14:54
Rufname:
Wohnort: Siegburg City

AW: Bei Auswahl aus PullDown Eingabe prüfen - AW: Bei Auswahl aus PullDown Eingabe prüfen

Nach oben
       Version: Office XP (2002)

Hallo!

nein ist mir nicht klar. Was schreibe ich denn statt der eins hin?
Willi Wipp
Moderator


Verfasst am:
30. Okt 2006, 16:42
Rufname:
Wohnort: Raum Wiesbaden


Re: Bei Auswahl aus PullDown Eingabe prüfen (II) - Re: Bei Auswahl aus PullDown Eingabe prüfen (II)

Nach oben
       Version: Office XP (2002)

Hi Smilla,

das kommt darauf an wie Du das Formular oeffenen willst Wink
0: acWindowNormal (Standardwert, kann also weggelassen werden)
1: acHidden
2: acIcon
3: acDialog

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
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: Nur Auswahl oder alle DS anzeigen 3 Darkness 399 14. Mai 2007, 14:43
Thomas2007 Nur Auswahl oder alle DS anzeigen
Keine neuen Beiträge Access Tabellen & Abfragen: Eingabe neuer Datensätze in mehrere Tabellen gleichzeitig? 1 matof 604 15. März 2007, 19:26
Thomas2007 Eingabe neuer Datensätze in mehrere Tabellen gleichzeitig?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage aus einer Tabelle nach Auswahl von 4 Kriterien 4 Yawsuger 801 24. Jan 2007, 20:20
Yawsuger Abfrage aus einer Tabelle nach Auswahl von 4 Kriterien
Keine neuen Beiträge Access Tabellen & Abfragen: Eingrenzende Auswahl 1 Gast 495 29. Nov 2006, 11:35
rita2008 Eingrenzende Auswahl
Keine neuen Beiträge Access Tabellen & Abfragen: Anwender-Abfrage/Eingabe 1 MickeyO 482 28. Nov 2006, 12:50
jens05 Anwender-Abfrage/Eingabe
Keine neuen Beiträge Access Tabellen & Abfragen: SQL (Auswahl aller Felder + 2 Felder ausschließen) 1 student2006 1803 26. Nov 2006, 18:57
Nouba SQL (Auswahl aller Felder + 2 Felder ausschließen)
Keine neuen Beiträge Access Tabellen & Abfragen: Eingabe in gruppierter Abfrage nicht möglich 6 lukretu 991 11. Mai 2006, 15:17
lukretu Eingabe in gruppierter Abfrage nicht möglich
Keine neuen Beiträge Access Tabellen & Abfragen: Eingabe nicht möglich! 8 turbochris 803 04. Mai 2006, 20:51
stpimi Eingabe nicht möglich!
Keine neuen Beiträge Access Tabellen & Abfragen: 2x ja/nein Kontrollkästchen - nur eine eingabe erlauben 1 MacGyverDTH 1313 29. März 2006, 16:25
kia 2x ja/nein Kontrollkästchen - nur eine eingabe erlauben
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Eingabe von Zahlenreihen unterbinden 6 WernerH 903 06. März 2006, 00:23
WernerH Automatische Eingabe von Zahlenreihen unterbinden
Keine neuen Beiträge Access Tabellen & Abfragen: Tabellenverfügbarkeit prüfen.... 4 blicki 504 04. Feb 2006, 19:47
blicki Tabellenverfügbarkeit prüfen....
Keine neuen Beiträge Access Tabellen & Abfragen: Formular zur Auswahl + Eingabe von Daten verschiedener Tab 4 DerLehrling 1285 22. Dez 2005, 16:14
DerLehrling Formular zur Auswahl + Eingabe von Daten verschiedener Tab
 

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