Ich versuche, eine Datenbank in Access 2010 zu erstellen, und habe ein kleines Problem festgestellt. Ich habe derzeit zwei Tabellen, EarlyStageListResults
& ESDailyTotals
. Jede dieser Tabellen hat ein Feld mit dem Namen Records
, wobei ESDailyTotals
eine Zusammenfassung mehrerer Einträge in EarlyStageListResults
ist. Was ich tun muss, ist das Records
Feld in ESDailyTotals
die Summe von mehreren Records
Felder in EarlyStageListResults
sein. Zum Beispiel, da die folgenden Datensätze in EarlyStageListResults
:Berechne den Wert eines Felds basierend auf mehreren Datensätzen in einer anderen Tabelle in Access DB
Date Records
4/22/16 2000
4/22/16 3000
4/22/16 1500
4/21/16 1200
4/21/16 2700
die Datensätze in ESDailyTotals
sollten sein:
Date Records
4/22/16 6500
4/21/16 3900
Ich weiß, das später durch VBA und ein Formularereignis, berechnet werden kann, aber optimal würde ich gerne aktualisieren zu können, sobald sich eines der Records
Felder in EarlyStageListResults
ändert. Es scheint, als könnte es eine Möglichkeit geben, dies mit dem Access Macro Editor zu tun (nicht sicher über den Namen, aber das Tool, wo Sie ein Makro durch eine Reihe von Kombinationsfeldern anstatt über VBA erstellen können), aber ich habe es nie bekommen ein Verständnis für die Verwendung dieses Tools, so haben sich immer auf Forms und VBA verlassen. Wenn es ein Ereignis gibt, das ausgelöst wird, wenn ein Feld aktualisiert wird, und eine Möglichkeit, VBA-Code in diesen Ereignishandler einzugeben, wie Sie es mit Access Forms können, dann kann ich das mit DLookup oder einer SQL-Anweisung machen. Ich weiß, wie man diesen Event-Handler ergreift.
Dies muss alles in Access selbst getan werden, kann ich ein externes Programm nicht verwenden, um die Datensätze in einer Access-Datenbankdatei zu aktualisieren. Dies ist für die Arbeit, und (zumindest offiziell) sind alle benutzerdefinierten Programme ein großes Nein. :)
Vielen Dank im Voraus jeder!
Das wird das Feld aber nicht richtig aktualisieren? Der Grund, warum ich sie brauche, ist, dass es Berechnungen gibt, die mit der Gesamtzahl pro Tag gemacht werden müssen. Ich hatte das vorher in einer anderen Form, was ich versuche zu vereinfachen ist es. Die vorherige Version hatte diese zwei Tabellen als eine einzige Tabelle kombiniert, und es funktioniert so, aber dann brauche ich ungefähr 10 Felder für jede Liste, und wenn sich ein Listenname ändert, dann muss ich hineingehen und die Felder ändern, was vorher bedeutet Daten sind viel schwieriger zugänglich. Ich versuche, es für zukünftige Änderungen aktualisierbar zu machen. –
'Das wird das Feld nicht aktualisieren, richtig?' Ich weiß nicht, was das bedeutet oder auf welches Feld Sie sich beziehen. Es ist eine Abfrage, es wird die Summen im laufenden Betrieb jedes Mal berechnen, wenn "ESDailyTotals" aufgerufen wird. –
Ich brauche die Ergebnisse der Berechnung, die im 'ESDailyTotals' 'Report'-Feld gespeichert werden, damit in späteren Berechnungen darauf zugegriffen werden kann. Es gibt ein Feld mit dem Namen "PercentTotal", das den Prozentsatz aller Konten speichert, die eine bestimmte Liste jeden Tag enthält. Wenn an einem bestimmten Tag insgesamt 6000 Konten vorhanden sind und Liste A 2000 davon enthält, würde das Feld "ProzentTotal" in Liste A 33% betragen. (Fortsetzung) –