Supportnet / Forum / Datenbanken
Summe einer Spalte eines Listenfeldes
Frage
Hallo zusammen!
Ich bräuchte in einem Formular, das ein Listenfeld enthält, die Summe einer Spalte dieses Listenfeldes. Das Listenfeld wird noch gefiltert, nach Datum und Text.
Hat jemand einen Vorschlag, wie ich zu der heiß ersehnten Summe komme ???
Antwort 1 von piano
Hallo
Das einzige Problem ist, wohin zu plazieren:
Vorschlag: Bei Ereignis Formular Anzeigen.
Das Formularfeld möge XSumme heißen, und die zu summierende Spalte ist 4
Zähler beginnt mit 0!
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Das einzige Problem ist, wohin zu plazieren:
Vorschlag: Bei Ereignis Formular Anzeigen.
Private Sub Form_Current()
Dim z%
Me.XSumme = 0
For z = 0 To Liste0.ListCount - 1
Me.XSumme = Me.XSumme + Val(Liste0.Column(3, z))
Next z
End Sub
Das Formularfeld möge XSumme heißen, und die zu summierende Spalte ist 4
Zitat:
(Column(3, z)
.(Column(3, z)
Zähler beginnt mit 0!
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von andi-ahnungslos
Hi piano! Vielen Dank für Deine Hilfe, ich habe sie wie folgt umgesetzt:
Private Sub Form_Current()
Dim z%
Me.Gesamtpreis = 0
For z = 0 To Listenfeld.ListCount - 1
Me.Gesamtpreis = Me.Gesamtpreis + Val(Listenfeld.Column(4, z))
Next z
End Sub
Vorab eine Frage zu Deinem Code, Du schreibst:
Das Formularfeld möge XSumme heißen, und die zu summierende Spalte ist 4
(Column(3, z)
--> ist es richtig, dass im Code (Column(3, z) steht, obwohl Spalte Nr. 4 summiert werden soll? Bei mir ist es Spalte Nr. 5, deshalb hab ich (4, z) im Code. Ist das korrekt?
Leider bekomme ich die Summe nicht angezeigt, es steht eine 0 im Feld Gesamtpreis.
Hast Du noch eine Idee, woran es liege könnte/was ich falsch mache ???
Vielen Dank im Voraus !!!
Andi
Private Sub Form_Current()
Dim z%
Me.Gesamtpreis = 0
For z = 0 To Listenfeld.ListCount - 1
Me.Gesamtpreis = Me.Gesamtpreis + Val(Listenfeld.Column(4, z))
Next z
End Sub
Vorab eine Frage zu Deinem Code, Du schreibst:
Das Formularfeld möge XSumme heißen, und die zu summierende Spalte ist 4
(Column(3, z)
--> ist es richtig, dass im Code (Column(3, z) steht, obwohl Spalte Nr. 4 summiert werden soll? Bei mir ist es Spalte Nr. 5, deshalb hab ich (4, z) im Code. Ist das korrekt?
Leider bekomme ich die Summe nicht angezeigt, es steht eine 0 im Feld Gesamtpreis.
Hast Du noch eine Idee, woran es liege könnte/was ich falsch mache ???
Vielen Dank im Voraus !!!
Andi
Antwort 3 von piano
Hallo
ad 1): Wie gesagt:
Zeile 0 ist die 1. Zeile und Spalte 0 ist die 1. Spalte.
ad 2): Der Zeitpunkt der Berechnung ist entscheidend: Wenn das Listenfeld erst nach der Anzeige des aktuellen Satzes
Gruss piano
ad 1): Wie gesagt:
Zitat:
Zähler beginnt mit 0!
Zähler beginnt mit 0!
Zeile 0 ist die 1. Zeile und Spalte 0 ist die 1. Spalte.
ad 2): Der Zeitpunkt der Berechnung ist entscheidend: Wenn das Listenfeld erst nach der Anzeige des aktuellen Satzes
Zitat:
(Ereignis Formular Anzeigen)
gefüllt wirden, musst du ein anderes Ereignis für den Berechnungszeitpunk wählen (z.Bsp.: Akualisieren des Listenfeldes)(Ereignis Formular Anzeigen)
Gruss piano