Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Aktuellen Wert übernehmen





Frage

Hallo, habe folgendes Problem. Habe eine Table Projekt. In der Tabelle sind zwei Felder deren letzten Wert ich immer übernehmen will. Das eine Feld ist Projekt und das andere Projekt_Nr. Wenn ich jetzt einen neuen Datensatz hinzufüge will, soll Access mir automatisch meine letzte Projekt_Nr anzeigen. Das Problem ist aber das ich auch ja noch das Feld Projekt habe. D.h. ich habe das Projekt X mit der Projekt_Nr 2 und das Projekt Y mit der Projekt_Nr 5. Wenn ich jetzt in das Feld Projekt Y eingebe will ich den zuletzt eingegebenen Wert sprich 5 angezeigt bekommen und wenn ich das Feld Projekt mit X fülle in dem Feld Projekt_Nr den Wert 2 angezeigt bekommen. D.h. Access soll mir immer den lezten Wert der in Projekt_Nr steht ausgeben, aber immer zu dem dazugehörigen Projekt. Ist sowas machbar? Vielen Dank für eure Hilfe. MFG Tristan

Antwort 1 von piano

Hallo
Ich kann leider Deinen Ausführungen nicht ganz folgen!
Hat ein Projekt mehrere Projekt-Nummern?
Was willst Du eigentlich bezwecken?
Gruß piano

Antwort 2 von Tristan

Hi piano,
Ein Projekt hat mehrere Projekt Nummern. Will nicht den Fehler begehen, dass ich zu einem Projekt 2 mal die gleiche Projekt Nummer vergebe. Wenn Access mir immer die letzte Projekt Nummer von einem Projekt ausgibit, vermeide ich die doppelt eingabe.

Tristan

Antwort 3 von piano

Hallo
Vielleicht hilft Dir dieser Code:
Private Sub Projekt_AfterUpdate()
Dim db As Database
Dim rs As Recordset
Dim letzteNummer
letzteNummer = 0
Set db = CurrentDb
Set rs = Me.RecordsetClone
If Me.NewRecord Then
    'rs.Bookmark = Me.Bookmark
    If Not rs.BOF Then
        rs.MoveFirst
        Do While Not rs.EOF
            If Me.Projekt= rs!ProjektThen
                If rs![Projekt-Nr] > letzteNummer Then
                    letzteNummer = rs![Projekt-Nr]
                End If
            End If
            rs.MoveNext
        Loop
    End If
End If
MsgBox (letzteNummer)
me.[Projekt-Nr]=letzteNummer+1 ' 1. freie Nummer
End Sub

Ich würde aussersem beim Formular-Ereignis "beim Anzeigen" wenn Me.NewRecord alle Felder außer "Me.Projekt" disablen
und erst nach erfolgreicher Eingabe wieder enablen (me.Feldx.Enabled=False/True).
Gruß piano

Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
- probieren geht über studieren -



Antwort 4 von Tristan

Hi Piano,
vielen Dank für deine Hilfe. Hat alles super geklappt. Hab nur noch eine Frage. Deine Idee die Felder zu disabeln ist gut. Nur wie bekomme ich die Felder von meinem Unterformular wieder disabled wenn ich ein neues Projekt hinzufüge?
MFG
Tristan

Antwort 5 von piano

Hallo
Unsichtbar!:
Private Sub Form_Current()
   If Me.NewRecord Then
    Me.Formular_U1.Visible = False
   Else
    Me.Formular_U1.Visible = True
   End If
End Sub

Gruß piano

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: