Autom. Felder füllen

Hallo zusammen, (Vers. Acc. 2007)

im Eingabeformular mit 12 Monaten (horizontal) u. den dazugehörigen Tagen (vertikal) soll ein Wert bis zum vorhergegangenen Eintrag linear verteilt u. eingetragen werden.
Das Bsp. wäre:
Monat Feb., letzter Eintrag war der 3. Tag im Feb., neue Eingabe ein Wert von 40 am 7. Tag. Diese 40 sollen dann jeweils mit 10 in den vorherigen 4., 5., 6. u. 7. Tag eingetragen werden. Dies sollte, egal welcher Tag im Monat die Eingabe geschieht so gehen. Kann mir bitte hier jemand Hilfe mittels VBA-Code leisten.

Gruß - Wolfgang

Hallo,

im Eingabeformular mit 12 Monaten (horizontal) u. den
dazugehörigen Tagen (vertikal) soll ein Wert bis zum
vorhergegangenen Eintrag linear verteilt u. eingetragen
werden.
Das Bsp. wäre:
Monat Feb., letzter Eintrag war der 3. Tag im Feb., neue
Eingabe ein Wert von 40 am 7. Tag. Diese 40 sollen dann
jeweils mit 10 in den vorherigen 4., 5., 6. u. 7. Tag
eingetragen werden. Dies sollte, egal welcher Tag im Monat die
Eingabe geschieht so gehen.

Kann mir bitte hier jemand Hilfe
mittels VBA-Code leisten.

Sorry,
vermutlich nein, weil absolut nicht klar ist, welche Situation hier vorherrscht und was das Ganze bezwecken soll.

Ich vermute eher, die Hilfe, die Du brauchst, liegt im Ratschlag, ein vernünftiges, db-orientiertes Datenmodell und Ablaufkonzept zu überlegen, wenn Du das Vorhaben tatsächlich mit Access realisieren willst.

Es hört sich eher nach einem Excel-Sheet an, das schnell mal mit Access bearbeitet werden soll. Das aber wird in die Hose gehen.

Gruß
Franz, DF6GL

Hallo Franz,

bisher habe ich noch kein Konzept für eine DB erstellt. Es sollte eine DB zum erfassen von Photovoltaikdaten werden. Da der Zähler immer einen Gesamtstand anzeigt u. man nicht jeden Tag zum ablesen kommt sollte dies so machbar sein, „hatte ich gedacht“. Das ganze hat eine Laufzeit von 15 Jahren noch dazu. Wird in Excel Umständlicher werden, kopieren, neues Jahr anlegen, Grafik neu anbinden usw.

Gruß - Wolfgang

Hallo Woflgang,

bisher habe ich noch kein Konzept für eine DB erstellt.

das hab ich befürchtet. Aber es ist ja noch nicht zu spät :wink:

JEDE DB-Erstellung MUSS mit dem Aufstellen eines Konzept beginnen, das aussagt, was wann mit den vorhanden Daten geschen soll und welche Ergebnisse man daraus erwartet.

Danach ist eine Datenanalyse an der Reihe, die die vorhandenen Daten erklärt, sortiert und zu zusammengehörenden zusammenfasst und in Beziehung setzt (—> Normalisierung)

Es
sollte eine DB zum erfassen von Photovoltaikdaten werden.

Ok, prinzipiel kein Problem, aber wie oben erwähnt: Was soll mit den erfassten DAten geschehen?

Da
der Zähler immer einen Gesamtstand anzeigt u. man nicht jeden
Tag zum ablesen kommt sollte dies so machbar sein, „hatte ich
gedacht“.

Wozu brauchst Du die Daten von Tagen, an denen nicht abgelesen wurde?

„Erfassung“ bedeutet, reale Daten zu erfassen und nicht Zwischenwerte zu „berechnen“ oder zu schätzen. Wenn man die trotzdem irgendwann mal benötigen sollte, können die auch dann errechnet werden.

Das ganze hat eine Laufzeit von 15 Jahren noch dazu.

Das ist auch kein Problem.

Wird in Excel Umständlicher werden, kopieren, neues Jahr
anlegen, Grafik neu anbinden usw.

Ja, habe auch nicht empfohlen, dass das in Excel gemacht werden soll.
Wenn Access als DB-System benutzt werden soll, dann müssen die Bedingungen für eine DB-Anwendung erfüllt werden.

Gruß
Franz

Hallo Woflgang,

bisher habe ich noch kein Konzept für eine DB erstellt.

das hab ich befürchtet. Aber es ist ja noch nicht zu spät :wink:

ja da hast du recht, es ist nicht zu spät. Gut Ding braucht Weile heißt es so schön

JEDE DB-Erstellung MUSS mit dem Aufstellen eines Konzept
beginnen, das aussagt, was wann mit den vorhanden Daten
geschen soll und welche Ergebnisse man daraus erwartet.

Danach ist eine Datenanalyse an der Reihe, die die vorhandenen
Daten erklärt, sortiert und zu zusammengehörenden
zusammenfasst und in Beziehung setzt (—> Normalisierung)

Es
sollte eine DB zum erfassen von Photovoltaikdaten werden.

Ok, prinzipiel kein Problem, aber wie oben erwähnt: Was soll
mit den erfassten DAten geschehen?

es wird Sollwerte geben aus denen errechnet sich ein EUR-Betrag.

Da
der Zähler immer einen Gesamtstand anzeigt u. man nicht jeden
Tag zum ablesen kommt sollte dies so machbar sein, „hatte ich
gedacht“.

Wozu brauchst Du die Daten von Tagen, an denen nicht abgelesen
wurde?

das wird nicht oft vorkommen, aber für den Tagesvergleich, dazu gebe ich mich mit einen Mittelwert an einigen Tagen im Jahr zufrieden.

„Erfassung“ bedeutet, reale Daten zu erfassen und nicht
Zwischenwerte zu „berechnen“ oder zu schätzen. Wenn man die
trotzdem irgendwann mal benötigen sollte, können die auch dann
errechnet werden.

Das ganze hat eine Laufzeit von 15 Jahren noch dazu.

Das ist auch kein Problem.

Wird in Excel Umständlicher werden, kopieren, neues Jahr
anlegen, Grafik neu anbinden usw.

Ja, habe auch nicht empfohlen, dass das in Excel gemacht
werden soll.

habe ich schon so verstanden, dass Du nicht Excel gemeint hast.
Gruß - Wolfgang

Bedingungen für eine DB-Anwendung erfüllt werden.

Gruß
Franz

Moin Moin,

im Eingabeformular mit 12 Monaten (horizontal) u. den
dazugehörigen Tagen (vertikal) soll ein Wert bis zum
vorhergegangenen Eintrag linear verteilt u. eingetragen
werden.

nö, nicht mit Access, da hat Franz Recht, das ist Excel.
In Access hast du gar nicht die Möglichkeit 365 Eingabefelder auf einem Formular unterzubringen.

Dir geht es doch gar nicht darum an jedem Tag eine Eingabe vorzunehmen. Dir kommt es auf die Auswertung (Bericht) über einen bestimmtem Zeitraum an.

Basis wäre eine Tabelle mit den Feldern [AbleseDatum] und [AbleseWert]
Das Formular mit den zwei Feldern bekommst du sicher alleine hin :smile:

Der Bericht soll dann was beinhalten? Eine Grafik zur Auswertung?
und was noch?

Grüße aus Rostock
Wolfgang
(Netwolf)

Moin Moin,

zunächst Danke für deine Antwort!

im Eingabeformular mit 12 Monaten (horizontal) u. den
dazugehörigen Tagen (vertikal) soll ein Wert bis zum
vorhergegangenen Eintrag linear verteilt u. eingetragen
werden.

nö, nicht mit Access, da hat Franz Recht, das ist Excel.
In Access hast du gar nicht die Möglichkeit 365 Eingabefelder
auf einem Formular unterzubringen.

es wären doch 12 Felder u. max. 31 Zeilen.

Dir geht es doch gar nicht darum an jedem Tag eine Eingabe
vorzunehmen. Dir kommt es auf die Auswertung (Bericht) über
einen bestimmtem Zeitraum an.

doch eigentlich sollte schon jeder Tag erfasst werden. Ausnahmen bestätigen die Regel. Deshalb die autom. auffüllung der nach oben leeren Zeilen.

Basis wäre eine Tabelle mit den Feldern [AbleseDatum] und
[AbleseWert]
Das Formular mit den zwei Feldern bekommst du sicher alleine
hin :smile:

logo

Der Bericht soll dann was beinhalten? Eine Grafik zur
Auswertung?

Tages-, Monats-u. Jahresgrafik, sowie den Break Even Point.

und was noch?

die kum. KW’s mit Soll u. Ist Vergleich

Gruß Wolfgang aus Bayern

Grüße aus Rostock
Wolfgang
(Netwolf)

Moin Moin,

also hier im Forum bedeutet ein „:“ am Anfang der Zeile, dass der Text „alter“ Text ist.
Ein Zeilenanfang ohne „:“ bedeutet, das der Text von dir geschrieben wurde. Es also der aktuelle (neue) Text ist.

Zu deinem Problem:

Wenn du die fehlenden Werte in den nicht ausgefüllten Tagen hinzufügen willst, kann man das als Funktion/Prozedur über VBA in einem Rutsch für den vergangenen Zeitraum erledigen lassen. Dir bleibt dann nur noch die Aufgabe/Arbeit, die Werte an irgendwelchen Tagen einzutragen.

Diese Funktion könnte man dann immer aufrufen, wenn du das Programm startest. So bist du immer up to date :smile:

Grüße aus Rostock
Wolfgang
(Netwolf)

Moin Moin,

also hier im Forum bedeutet ein „:“ am Anfang der Zeile, dass
der Text „alter“ Text ist.
Ein Zeilenanfang ohne „:“ bedeutet, das der Text von dir
geschrieben wurde. Es also der aktuelle (neue) Text ist.

ok, danke mache ich in Zukunft!

Zu deinem Problem:

Wenn du die fehlenden Werte in den nicht ausgefüllten Tagen
hinzufügen willst, kann man das als Funktion/Prozedur über VBA
in einem Rutsch für den vergangenen Zeitraum erledigen lassen.
Dir bleibt dann nur noch die Aufgabe/Arbeit, die Werte an
irgendwelchen Tagen einzutragen.

Diese Funktion könnte man dann immer aufrufen, wenn du das
Programm startest. So bist du immer up to date :smile:

Grüße aus Rostock
Wolfgang
(Netwolf)