Hallo,
trotz Suchversuch habe ich keine Lösung für mein Problem gefunden.
Ich habe ein Unterformular in Datenblattansicht, das eine feste Anzahl Spalten und eine vom Hauptdatensatz abhängig varriierende Anzahl Zeilen enthält. Nun möchte ich, dass der Benutzer aus den angebotenen Zeilen mehrere markieren kann und die Summe der markierten Werte aus der letzten Spalte irgendwo ausgeworfen wird. (Egal ob Balloon-Meldung oder Popup oder Statusleiste....)
Am wichtigsten ist erstmal, dass Access die Werte der markierten Zeilen überhaupt summiert.
Kennt da einer einen Weg zu ?? :-[
Sieht etwa so aus:
|1. Quartal| | |Punkte| | |4| |
|2. Quartal| | |Punkte| | |3| |
|3. Quartal| | |Punkte| | |2| |
|4. Quartal| | |Punkte| | |1| |
|1. Quartal| | |Punkte| | |0| |
Wenn jetzt Zeile 2,3 und 4 markiert werden, möchte ich das Ergebnis 6 irgendwo auswerfen.
Ach ja, Acc 2003
Hallo,
in Endlosform/Datenblattansicht ist es schwierig/nicht möglich , nicht aufeinander folgende Datensätze zu markieren. Als Alternative wäre denkbar:
-- ein Listenfeld mit Mehrfachselektion. Mittels Durchlaufen der selektierten Einträge kann die Summe berechnet werden.
-- Ein zusätzliches Ja/Nein-Feld, das als Kontrolkästchen im Endlosform eingebaut wird und als Markierung für die gewünschten DS fungiert. Über eine summierende Abfrage (bzw. die DSum()-Funktion) wäre dann die Berechnung durchführbar.
;D
Genau das habe ich auch gemerkt. Aber.....ich habe die Reihenfolge einfach so festgelegt, das für unseren Anwendungsbereich immer zusammenhängende Zeilen markiert werden.
Und dann habe ich bei einer Internetquelle einen Code gefunden, der nur leicht ageändert werden musste, um meiner Fragestellung gerecht zu werden:
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim i As Long
Dim F As Form
Dim RS As Recordset
Dim Summe As Long
Summe = 0
Set F = Me
Set RS = F.RecordsetClone
RS.MoveFirst
RS.Move F.SelTop - 1
For i = 1 To F.SelHeight
Summe = Summe + RS![Anzahl]
RS.MoveNext
Next i
MsgBox "Summe der Punkte ausgewählter Zeiträume: " & Summe
End Sub