Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: YvS am September 09, 2014, 13:13:24

Titel: Datensatz bei laufender Nummerierung im Endlosformular ansprechen
Beitrag von: YvS am September 09, 2014, 13:13:24
Hallo zusammen,
ich habe eine Funktion, die die Zeilen im Formular (Detailbereich) durchnummeriert. Aber leider schaffe ich es nicht, die Nummer der jeweiligen Zeile für Ereignisse zu nutzen.

Kann mit jemand sagen, wie ich die Datensätze ansprechen kann?
Code (vbnet) [Auswählen]
Function FctNr()
    'gibt eine laufende Nummer im Formular zurück
    'Anzeige im Formular durch Feld mit Steuerelementinhalt: =FctNr()
    On Error GoTo FctNr_Error
    Me.RecordsetClone.Bookmark = Me.Bookmark
    FctNr = Me.RecordsetClone.AbsolutePosition + 1
   
FctNr_Exit:
    Exit Function
FctNr_Error:
    If Err.Number = 3021 Then FctNr = 0   'bei neuem DS
    Resume FctNr_Exit
End Function


Private Sub Preisberechnung_Click()
Dim ZeileNr As Integer
While ZeileNr>0
If Me.txtEuroPreis > 0 Then
        Me.txtPreis = Round((Me.txtEuroPreis * Me.txtUmrEuroinCHF), 2)
    '### Für Eingabe von Dollar ###
    ElseIf Me.txtDollarPreis > 0 Then
        Me.txtPreis = Round((Me.txtDollarPreis * Me.txtUmrDollarinCHF), 2)
End If
Wend

Meine Absicht ist, dass ich die Berechnung nicht nur für eine Zeile, sondern für alle angezeigten Zeilen auf einmal habe.
Titel: Re: Datensatz bei laufender Nummerierung im Endlosformular ansprechen
Beitrag von: DF6GL am September 09, 2014, 13:58:45
Hallo,

ZitatMeine Absicht ist, dass ich die Berechnung nicht nur für eine Zeile, sondern für alle angezeigten Zeilen auf einmal habe.

Wozu brauchst Du dafür eine "Durchnummerierung" der DS?

Wenn alle txt....-Felder an Tabellenfelder gebundene Formtextfelder sind, dann könnte die Berechnung gleich im Steuerelementinhalt zweier weiterer Textfelder geschehen und die Summe über alle DS in zwei zusätzlichen Feldern im Formularfuß realisiert werden.
Titel: Re: Datensatz bei laufender Nummerierung im Endlosformular ansprechen
Beitrag von: YvS am September 09, 2014, 14:06:30
Hi,
ich kann das nicht so machen, weil ich die entsprechenden Felder in der dahinterliegenden Tabelle erst damit befülle, wenn ich das Formular schliesse.
Also gibt es sogesehen noch keine Datensätze, sondern nur Eingabefelder für die Preisstaffelung in verschiedenen Währungen
Titel: Re: Datensatz bei laufender Nummerierung im Endlosformular ansprechen
Beitrag von: DF6GL am September 09, 2014, 15:01:26
Hallo,

??

hast Du nun ein Endlosform mit Textfeldern, die an eine Tabelle gebunden sind oder nicht?

Wenn Ja, welche Textfelder sind gebunden und wie lauten die dazu gehörenden Tabellenfelder?

Mach einen Screenshot vom Formular und lad den hier hoch.


btw: ein Konzept, das vorsieht, berechnete Werte zu speichern, ist (in den meisten Fällen) nicht zielführend.
Titel: Re: Datensatz bei laufender Nummerierung im Endlosformular ansprechen
Beitrag von: YvS am September 09, 2014, 17:07:35
Tut mir echt leid. Ich bin wirklich schlecht im Erklären von meinen Problemen, da ich gerade erst  mit dem Access angefangen habe...:-(
Zu deiner Frage: Ja, die Felder sind an eine Tabelle gebunden.

Und was mein Problem angeht, so habe ich das leidige Thema mit der Durchnummerierung umgangen indem ich SEHR VIELE "Ereignisse bei Enter" eingefügt habe.
Natürlich wäre es anders schöner gewesen und mit weniger code verbunden, aber es läuft zumindest!:-)
Wenn ich mehr zeit habe, komm ich vlt nochmal daruaf zurück;-)

Trotzdem vielen Dank für die Unterstützung!