Zum Inhalt springen

VBA Zwischensumme


Sassy

Empfohlene Beiträge

Hallöchen,

ich habe in MS Access eine Tabelle mit folgenden Daten angelegt:

"Projektname" "Stunden"

"01 Testprojekt" "10"

"01.1 Testprojekt" "5"

"01.1.1 Testprojekt "7"

"01.2 Testprojekt" "7"

"01.2.1 Testprojekt" "3"

"02 Testprojekt" "1"

"02.1 Testprojekt" "4"

Nun habe ich einen Bericht angelegt, der mir diese beiden Felder ausgibt.

Jetzt möchte ich gerne, dass er jedesmal, wenn sich die Obernummer des Projektes ändert, die Summe ausgegeben wird.

Beispiel:

"01 Testprojekt" "10"

"01.1 Testprojekt" "5"

"01.1.1 Testprojekt "7"

"01.2 Testprojekt" "7"

"01.2.1 Testprojekt" "3"

Summe: 32

"02 Testprojekt" "1"

"02.1 Testprojekt" "4"

Summe: 5

Ich habe bereits ein Feld für die Summe erstellt, jedoch wird die Summe entweder nach jeder Zeile oder nur am Ende der Seite ausgegeben.

Ich möchte die Summe aber wie oben im Beispiel angegeben, ausgeben.

Geht das überhaupt? Wenn ja, wie?

Würde mich freuen wenn ihr mir da ein paar Tipps geben könntet.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was ist mit "Spielregeln der Normalisierung" gemeint?

Ich habe vergessen, folgendes zu erwähnen:

Im späteren Einsatz kenne ich die Daten der Tabelle vorher nicht. Ein Projekt kann also beliebig viele Unterprojekte haben. Ich muss also irgendwie ermitteln, wann die Summe erscheinen soll.

Bearbeitet von Sassy
Link zu diesem Kommentar
Auf anderen Seiten teilen

Normalisierung beduted, dass du für atomare Attribute in eigene Felder speichern sollst, die dann nur vom eigentlichen Primärschlüssel der Tabelle abhängig sind.

Also, du willst nach OberSumme sortieren, gruppieren etc., dann muss die Obersumme in ein eigenes Feld.

Wenn du die Werte irgendwo her bekommst, kannst du bei Erhalt die Auftröselung nach Obergruppe und dem rest mit VBA oder ähnlichen vornehmen. Auf alle Fälle benötigst du irgendein fald, in dem alle Datensätze, die in der gleichen Gruppe liegen, den gleichen Wert haben, alle Datensätze, die nicht in der Gruppe liegen, einen anderen Wert haben - sprich ein eigenes Feld für deine Obergruppe.

PS: Normalisierung (Datenbank) ? Wikipedia

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also die Daten in der Tabelle hole ich mir eig. aus einer Datenbank, da kann ich nicht einfach Felder hinzufügen.

Ausserdem wird es beliebig viele Projekte geben, nicht nur 01 und 02.

Ich habe jetzt ein Textfeld hinzugefügt und den Steuerelementinhalt der Stunden hinzugefügt. Dann habe ich auf "Sortieren/Gruppieren" geklickt und Feld1 (Projektname) aufsteigend sortieren lassen.

Dort habe ich eingestellt, dass er nach Anfangsbuchstaben gruppieren soll.

Das Gruppieren klappt soweit auch.

Wenn ich in den Gruppenfuss nun die Summe einfüge, hat diese aber immer nur den Wert aus der ersten Zeile der Gruppe, nicht die Summe der gesamten Gruppe.

Bearbeitet von Sassy
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hab es jetzt gelöst *freu*

Ich habe ein Textfeld1 im Detailbereich eingefügt. Über Sortieren/Gruppieren habe ich eingestellt, dass in diesem Textfeld1 die Summe für die Gruppe erscheinen soll.

Textfeld1 würde nach jeder einzelnen Zeile erscheinen, ich habe es jedoch auf unsichtbar gestellt.

Im Fußbereich der Gruppen habe ich dann ein Textfeld2 erstellt.

Per VBA habe ich dem Textfeld2 den Wert von Textfeld1 zugewiesen und voila, es funktioniert :)

Danke für eure Hilfe!!!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...