Datensätze gruppieren und Summen anzeigen
Gruppieren Sie Kunden nach Land und Ort, mit der Anzahl der Datensätze und der Summe des Umsatzes in jeder Gruppenzeile und in der Fußzeile, und geben Sie das Ergebnis so an Excel weiter, wie es angezeigt wird.
Voraussetzungen: WKL Forms Object Library 1.23 oder höher.
Lösungsüberblick
GroupFields listet die Felder auf, nach denen gruppiert wird, das äußerste zuerst; DESC hinter einem Feld ordnet
seine Gruppen absteigend. Summary einer Spalte bestimmt, was ihre Fußzeile und ihre Gruppenzeilen zeigen (Anzahl,
Summe, Minimum, Maximum, Mittelwert); ShowFooter blendet die Fußzeile ein. Benutzer gruppieren im Gruppierungsbereich
(ShowGroupPanel), indem sie Spaltenköpfe darauf ziehen.
Umsetzung
With Me!Grid1.Object
.Columns("Umsatz").Summary = wsuSum
.ShowFooter = True
.GroupFields = "Land;Ort DESC"
.ExpandAll
Debug.Print .SummaryValue("Umsatz") ' the footer value
.ExportToXlsx "Kunden.xlsx" ' next to the database
End With
Hinweise
- Gruppieren ist eine Ansicht: Die Datensätze werden nicht neu gelesen, und die Auswahl bleibt erhalten. Ein Gruppierungsfeld, das keine Spalte ist, wird einmal mit den Datensätzen gelesen.
- Eine Gruppenzeile zeigt das Feld, den Wert und die Anzahl der Datensätze („Ort: Bonn (3)“); Null und leerer Text bilden eine gemeinsame Gruppe, angezeigt als
(leer). Gruppenzeilen lassen sich nicht bearbeiten; ihre Summen zählen nur die Datensätze der Gruppe. - Im Gruppierungsbereich kehrt ein Klick auf eine Ebene die Reihenfolge ihrer Gruppen um, Ziehen einer Ebene ändert die Reihenfolge der Ebenen, Ziehen aus dem Bereich heraus entfernt sie. Das Kontextmenü des Bereichs bietet die Reihenfolge sowie das Auf- und Zuklappen aller Gruppen an, das Kontextmenü eines Spaltenkopfs das Gruppieren nach dieser Spalte und das Entfernen der Gruppierung.
- Die Arbeitsmappe hat je Gruppenebene eine Gliederungsebene; die Datensätze einer zugeklappten Gruppe sind ausgeblendete Zeilen, und jede Gruppensumme ist eine
SUBTOTAL-Formel über die Zeilen der Gruppe. DasSUBTOTALder Fußzeile lässt sie aus, sodass nichts doppelt gezählt wird, auch nach dem Filtern in Excel. MitExportRows= sichtbar entfallen die Datensätze zugeklappter Gruppen. - Ereignisse:
BeforeGroupExpand,GroupExpand,BeforeGroupCollapse,GroupCollapsefür das Auf- und Zuklappen durch den Benutzer.
Verwandte Themen
de/wiki/msaccess/comctl/how-to/group-and-total-records.txt · Zuletzt geändert: von Wolfgang van der Stille