Eve: Jeden Datensatz einen anderen Wert zuweisen

Hallo Leute!
Ich hoffe ihr könnt mir helfen.
Ich bin Access Anfänger und komme nicht mehr weiter.

Ich habe 2 Formulare.
1.Formular
                 12.07.2007   13.07.2007  (Wochenansicht)
PN-Nr   Name
5588    Maier    xxxx         xxxx
8978    Müller   xxxx         xxxx
.       .
.       .

Im Platzhalter(xxxx) sollte der Status stehen, ob die Mitarbeiter anwesend sind oder nicht. Das steht im 2. Formular

2.Formular

PN-Nr   Datum        Status
5588    01.01.2007   1 = Anwesend
5588    02.01.2007   G = Gleitzeit
...     ...          ...
8978    01.01.2007   K = Krank
8978    02.01.2007   1
...     ...          ...

Mein Problem ist jetzt, dass ich den Status nicht im 1.Formular angezeigt bekomme, da wenn ich es mit einer Wenn-Funktion in VB löse und mit globalen Variablen füllt es alle xxxx mit dem gleichen Wert aus. Ich glaube das hat damit zu tun, dass jede neue Zeile ein neuer Datensatz ist.

Wie bekomme ich jetzt hin das in xxxx der Status aus dem 2.Formular steht.

Bin über jede hilfe dankbar.

  1. hallo,

    Ich bin Access Anfänger

    Hm. Access ist eine proprietäre Microsoft-Entwicklung, auch wenn sie SQL einigermaßen versteht. Den meisten Forumsbesuchern dürfte MySQL wesentlich geläufiger sein.

    Mein Problem ist jetzt, dass ich den Status nicht im 1.Formular angezeigt bekomme, da wenn ich es mit einer Wenn-Funktion in VB löse und mit globalen Variablen füllt es alle xxxx mit dem gleichen Wert aus.

    Das ist nicht wirklich verständlich. Du müßtest deinen VB-Code eventuell angeben. Aber grundsätzlich läßt sich annehmen, daß du den Wert, auf den es dir ankommt (Status) aus dem einen Datensatz ausliest, in eine Variable packst und diese Variable dann eben an den anderen Datensatz übergibst.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Mein Problem ist jetzt, dass ich den Status nicht im 1.Formular angezeigt bekomme, da wenn ich es mit einer Wenn-Funktion in VB löse und mit globalen Variablen füllt es alle xxxx mit dem gleichen Wert aus.

      Das ist nicht wirklich verständlich. Du müßtest deinen VB-Code eventuell angeben. Aber grundsätzlich läßt sich annehmen, daß du den Wert, auf den es dir ankommt (Status) aus dem einen Datensatz ausliest, in eine Variable packst und diese Variable dann eben an den anderen Datensatz übergibst.

      Form_Schicht2Status
      Private Sub Form_Load()

      Dim PNNrStatus As Double
      Dim WochentagStatus As String
      Dim DatumStatus As Date
      Dim StatusStatus2 As Double //da 1 für 1 für Anwesend; 2 für G für Gleitzeit;...

      PNNrStatus = Me.PNNrStatus
      WochentagStatus = Me.WochentagStatus
      DatumStatus = Me.DatumStatus
      StatusStatus2 = Me.StatutsStatus2

      End Sub

      Form_Schicht2
      Private Sub Form_Load()

      Dim PNNr2 As Double
      Dim Datum1 As Date

      Dim Status1 As Double

      If ((PNNrStatus And DatumStatus) = (PNNr And Datum1)) Then
      Me.Status1 = StatusStatus2
      Else
      Me.Status1 = ""
      End If
      End Sub

      Im letzten Datensatz steht nichts drin, weil das der ist zum einen neuen Datensatz hinzu zufügen. Deshalb ist sein ergebniss in allen Datensätzen 0. Ist das ist ja nicht das was ich will.

      Der Status soll nach der Reihe abgefragt werden und die Datensätze geschrieben werden wo das Kriterium passt.

      Grüße