Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
220to224
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
220to224
220to224
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Konstruktive Vorschläge gesucht

Konstruktive Vorschläge gesucht
20.02.2003 08:12:25
Anna
Guten Morgen Ihr Spezialisten,
aus persönlichen Gründen möchte ich den weiter unten begonnenen Thread nicht fortsetzen.
Deshalb hier und heute noch einmal mein Problem:

Ich habe, sagen wir mal 3 Textboxen in denen jeweils ein Datum eingegeben wird und 3 dazu korrespondierende Textboxen in denen jeweils ein Geldbetrag eingegeben wird. Zusätzlich habe ich ein bekanntes Schlussdatum.

Nun muss ich das vom Beginndatum (1.Textbox) bis zum Schlussdatum auflaufende Kapital errechnen. Das ganze wird dadurch kompliziert, dass der jeweilige Beginn oder eine Änderung des Geldbetrages mitten im Monat sein kann. Dann ist dieser Monat mit seinen tatsächlichen Kalendertagen heranzuziehen. Die Berechnung erfolgt max. bis zum Tag vor dem Schlussdatum!

Beispiele:

Ab 01.01.2001 EUR 100.-, Schlussdatum 01.04.2001
Ergebnis: 3 volle Monate x EUR 100.- = EUR 300.-

Ab 15.01.2001 EUR 31.-, Schlussdatum 01.04.2001
Ergebnis: 17 (Rest-) Tage x EUR 1.-(31.tel von EUR 31.-) + 2 volle Monate x EUR 31.- = EUR 79.-

Ab 15.01.2001 EUR 31.-, ab 20.02.2001 EUR 56.- ab 15.03.2000 EUR 0.-, Schlussdatum 01.04.2001
Ergebnis: 17 (Rest-)Tage x EUR 1.-(31.tel von EUR 31.-) + 19 Tage x EUR 1.- (31.tel von EUR 31.-) + 9 (Rest-)Tage x EUR 2.- (28.tel von EUR 56.-) + 14 Tage x EUR 2 (28.tel aus EUR 56.-) = EUR 82.-

....

Das ganze artet in eine "If-Then-Orgie" aus die sehr schnell unübersichtlich wird. Meine Frage ist deshalb: Hat jemand ein solches Problem schon mal gelöst bzw. wer hat Denksätze, wie man so etwas anpackt? Ich erwarte keine fertigen Lösungen sondern wünsche mir konstruktive Vorschläge, wie man das programmiertechnisch geregelt bekommt.

Liebe Grüße aus Würzburg
Anna

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 08:42:18
Nike

Hi,
anstelle von if else
kannst du dir ja auch mal select case anschaun...
Sieht mir für Dein Problem am geeignetsten aus...

Bye

Nike

P.S. Was gibt es denn für pers. Probleme. die es verhindern
den Thread weiterzuführen? ;-)

Re: Konstruktive Vorschläge gesucht
20.02.2003 08:59:50
Michael Scheffler

Hallo,

ich verstehe nicht, wo hier überhaupt logische Strukturen greifen sollen.

Du hast einfach eine Summe:
AnzTage1 * Irgendwas1
+ AnzTage2 * Irgendwas2
+ AnzTage3 * Irgendwas3
-----------------------
SummeGesamt

Wo ist denn hier was mit "If Then" oder "Select Case".


Viele Grüße

Micha



Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 10:17:04
Anna

Hallo Micha,
ich muss doch zumindest prüfen, ob ein voller Monat vorliegt und/oder ob zwischen den einzelnen Daten sich noch ein voller Monat befindet, der ja anders zu berechnen ist. Außerdem muss ich prüfen, ob das Schlussdatum erreicht ist und diese Eingaben nicht mehr zu berücksichtigen sind. Mach ich es jetzt komplizierter als es ist? Ich komm einfach von meiner Schiene nicht runter, deswegen ja auch mein Hilferuf hier im Forum.
Liebe Grüße
Anna

Re: Konstruktive Vorschläge gesucht
20.02.2003 10:46:31
Michael Scheffler

Hallo Anna,

ich würde für die Prüfung Deiner Monate in dem Fall eine Funktion einsetzen, die die Anzahl Tage ausrechnet und entsprechend die Zinsen berechnet.

Die kannst Du bei x-beliebig viel Textboxen aufrufen. Dann ergibt sich der Rest als oben beschriebene Summe.

Oder habe ich Dich immer noch nicht verstanden:-(

Liebe Grüße aus Dresden

Micha




Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 11:26:20
gordon

Hallo Anna,

nimm den anderen Thread mal nicht so ernst ;-) Ein wenig mehr Lektüre der Onlinehilfe und dieses Forums, und es wird werden.

Mit 'casten' ist die Umwandlung eines Variablentyps in einen anderen gemeint. Dies erfolgt sofern möglich automatisch, wenn Du z.B. einen String zu einem Dbl-Wert addierst und ggfls. auch mehrfach, wenn eben diese Berechnung erneut ausgeführt wird. Besser ist, einmalig in die richtig dimensionierte Variable durch Zuweisung zu 'casten' im Sinne von:

Suche außerdem in der OLH von VBA mal unter 'rate' oder 'IRR', vielleicht nehmen Dir einige Funltionen auch Arbeit ab.

Gruß
gordon


Anzeige
Danke, ich werde daran arbeiten. cu oT
20.02.2003 15:22:38
Anna



Re: Konstruktive Vorschläge gesucht
20.02.2003 15:44:48
Anna

Danke Micha,
eine Funktion Monatstage habe ich, aber die Abhängigkeiten der Daten in den Textboxen untereinander macht mir Kopfzerbrechen. Ich muss Abfragen, ob das Datum in der ersten Textbox mit dem 1.d.M. anfängt oder später. Gleichzeitig muss ich in der zweiten Textbox schauen, ob diese den gleichen Monat betrifft, so dass ich dann die Differenz für diesen Monat berechnen kann. Wenn nicht, ist die Differenz ja der Beginn in der ersten Textbox bis zum Monatsende und das Datum in der zweiten Textbox muss wieder mit dem in der dritten verglichen werden .... So bin ich dann wieder bei meiner If-Then-Orgie gelandet.

Hast du das ganze schon mal in Gedanken richtig durchgespielt oder gar ausprobiert? Wie würde dein Lösungsansatz aussehen?

Übrigens berechne ich noch keine Zinsen; ich bin noch am Kapital ermitteln!

Liebe Grüße aus Würzburg
Anna

Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 16:06:17
Anna

Hallo Nike,
vielen Dank für deine Anregung, hatte tatsächlich noch nie was mit select case zu tun, werde es mir mal näher anschauen. Optimal wäre es, wenn man das ganze in eine Function einschließen könnte, so dass man(n)/Frau es immer wieder aufrufen kann. Wie würdest du das anpacken?
Liebe Grüße aus Würzburg
Anna

Re: Konstruktive Vorschläge gesucht
20.02.2003 16:19:17
Michael Scheffler

Hallo Anna,

hat das mit den anderen Textboxen von neulich zu tun?

Liebe Grüße

Micha

Re: Konstruktive Vorschläge gesucht
20.02.2003 16:33:32
Nike

Hi Anna,
ne UDF oder auch
user defined Function = Benutzerdefinierte Funktion
wär bestimmt ne Lösungsmöglichkeit
und Dir helfen würd ich ja auch gern,
aber leider kann ich deinen Beschreibungen
nicht weit genug folgen, um darauf basierend
nen anständigen Lösungsvorschlag zu liefern.

Vielleicht kannst du ja noch ein bischen erklären
(ruhig ausführlich ;-)

Bye

Nike

Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 16:46:42
Martin Beck

Hallo Anna,

zunächst mal einige Verständnisfragen:

1. Rechnet man im Bankgewerbe nicht grundsätzlich mit 30 Tagen pro Monat und 360 Tagen pro Jahr?

2. Sind die genannten Beträge solche für einen vollen Monat?

Falls 1. richtig ist, könnte man folgenden Ansatz versuchen:

1. Es gibt 7 Textboxen:

DatumsTextbox1
DatumsTextbox2
DatumsTextbox3
BetragsTextbox1
BetragsTextbox2
BetragsTextbox3
SchlußdatumsTextbox

2. Die Datumstextboxen werden alle mit dem Schlußdatum vorbelegt.

3. Die Betragstextboxen werden alle mit 0 vorbelegt.

4. Nachdem dann die relevanten Angaben eingetragen wurden, errechnet sich das Kapital sinngemäß wie folgt:

((DatumsTextbox2-DatumsTextbox1)*BetragsTextbox1)/30 +
((DatumsTextbox3-DatumsTextbox2)*BetragsTextbox2)/30 +
((SchlußdatumsTextbox-DatumsTextbox3)*BetragsTextbox3)/30

Gruß
Martin Beck




Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 17:32:51
Anna

Hallo Micha,
jein, die anderen Textboxen die wir in einer Schleife abgefragt haben, waren der Vorschuss den ich von diesem noch zu ermittelnden Kapital abziehen muss. Wenn du diese Textboxen meinst - das klappt großartig und ich hab wieder was dazugelernt. Oder welche Frage von neulich meinst du? Ich probiere nämlich schon ne ganze Weile mit Textboxen herum und habe schon einige Fragen an dieses (Spitzen-)Forum gestellt.
Liebe Grüße
Anna

Re: Konstruktive Vorschläge gesucht
20.02.2003 17:50:31
Michael Scheffler

Naja,

eine Anna aus W, dei nach texboxen fragt, wird es wohl schon nicht so oft geben:-)

Sag mir bitte nochmals, Du hast:
- 3 Textboxen mit Datumsen und 3 mit zugehörigem Kapital
- 3 Daten können sich überschneiden?
- Un Du willst Dir Gesamtsumme Kapital / Tage?

Viele Grüße aus DD

Micha

Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 18:39:21
Anna

Hallo Micha,
oh ich hab viele, viele Textboxen (insgesamt 18) mit dazugehörigen Datums. Zwei Textboxen können aber miteinander zu tun haben, weil in der ersten der Beginn der Geldleistung steht und in der zweiten bereits im gleichen Monat eine Änderung der Geldleistung stehen kann so dass ich jeweils die einzelnen Tage mit den anteiligen Beträgen habe. Das gleiche kann sich mit der zweiten und dritten sowie dritten und vierten .... Textbox wiederholen. Fest steht nur ein Datum und das ist der Beginn der Verzinsung, so dass mit Ablauf des Tages davor die Ermittlung des Kapitals beendet ist. Wenn es dich wirklich interessiert, kann ich dir auch das Programm in seiner jetzigen Form zumailen, vielleicht verstehst du dann besser was ich suche.
Ich denke letztendlich läuft es darauf hinaus, eine Funktion (UDF) für die zwei betroffenen Textboxen zu erstellen, in der dann alle Möglichkeiten per Select Case abgefragt werden und die dann dieses Teilkapital zurück gibt. Daran bin ich gerade am rumspielen

~Beginn~
Sub Function Teilkapital(Textbox1, Textbox2)
Teilkapital =
.
.
End Sub
~Ende~

Vielen Dank für dein Engagement.
Liebe Grüße aus Würzburg
Anna

Anzeige
Re: Konstruktive Vorschläge gesucht
20.02.2003 20:39:07
Anna

Danke Martin
für deinen Beitrag. Ich weis nicht, wie es im Bankgewerbe ist, aber bei der Sozialversicherung von der ich komme ist es grundsätzlich auch so, dass volle Kalendermonate mit 30 Tagen, angebrochene aber immer spitz gerechnet werden. Die angegebenen Werte sind immer für einen Monat, aber bei Teilmonaten muss durch die tatsächlichen Kalendertage dividiert und mit den Resttagen multipliziert werden. Sonst wäre es ja auch zu einfach :-)
Liebe Grüße
Anna


Re: Konstruktive Vorschläge gesucht
21.02.2003 07:04:56
Anna

Danke Nike,
so was wie ne UDF schwebt mir auch vor. Wenn es dich wirklich interessiert, kann ich dir das Programm auch mal zumailen, ich weis nicht, wie ich es noch ausführlicher erklären könnte.
Liebe Grüße
Anna

Anzeige
Re: Konstruktive Vorschläge gesucht
21.02.2003 11:07:29
Michael Scheffler

Hallo Anna,

ich würde in dem Fall das Ganze so kombinieren, dass das Geldfeld und das zugehörige Datumsfeld einen verwandten Namen tragen (z.B. txtGeld1 und txtDatum1).

Dann kannst Du jeweils eine Klassenfunktion - wie ich sie Dir schon mal gezeigt habe - anschubsen. Diese ruft in einer Schleife über 1 To txtGeldanzahl oder so ähnlich eine UDF auf, die immer den Abgleich zwischen den Boxen herstellt.

Liebe Grüße aus Dresden

Micha

Re: Konstruktive Vorschläge gesucht
21.02.2003 12:57:07
Danke, melde mich heute Abend noch mal oT



Re: Konstruktive Vorschläge gesucht
21.02.2003 12:57:43
Danke, melde mich heute Abend noch mal oT



Re: Konstruktive Vorschläge gesucht
21.02.2003 19:05:51
Anna

Hallo Nike,

für alle die sich für mein (vorläufiges) Ergebnis interessieren:

Natürlich muss es eine UDF sein, die über eine Schleife angesprochen wird, warum habt ihr mir das nicht gleich gesagt :-)

Ich hab inzwischen eine wenn auch holprige Version entworfen, die aber schon funzt. Allerdings würde ich gerne noch von dieser IF-Then-Else Konstruktion wegkommen. Geht das nicht eleganter über eine Schleife?

Hier mein aktueller Code, wobei die UDF noch ausgebaut wird:

Ich bedanke mich bei Euch allen.
Liebe Grüße
Anna

Re: Konstruktive Vorschläge gesucht
21.02.2003 19:14:49
Anna

Hallo Micha,

Das Datums und Geldfeld tragen verwandte Namen (txtFaelligkeit und txtEuroFaelligkeit). Gerne würde ich eine weitere Klassenfunktion anschupsen, aber ich kann nicht behaupten, das ich das wirklich verstanden habe allein mit der Dimensionierung tue ich mir schon schwer. Aber, brauch ich das eigentlich? Reicht nicht meine Lösung? Was hat diese Klassenfunktion für einen Vorteil. Bitte lass mich nicht dumm sterben. :-)

Für alle die sich für mein (vorläufiges) Ergebnis interessieren:

Natürlich muss es eine UDF sein, die über eine Schleife angesprochen wird, warum habt ihr mir das nicht gleich gesagt :-)

Ich hab inzwischen eine wenn auch holprige Version entworfen, die aber schon funzt. Allerdings würde ich gerne noch von dieser IF-Then-Else Konstruktion wegkommen. Geht das nicht eleganter über eine Schleife?

Hier mein aktueller Code, wobei die UDF noch ausgebaut wird:


Ich bedanke mich bei Euch allen.
Liebe Grüße
Anna


Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige