PDA

Vollständige Version anzeigen : Datum erzeugen und eintragen


myfake
13.07.2006, 17:11
Hallo zusammen,

ausgehend von dieser Tabelle ....

<P><blockquote><table border=3 cellpadding=1><tr><td>&nbsp;</td><td align=center bgcolor=#C0C0C0>D</td><td align=center bgcolor=#C0C0C0>E</td><td align=center bgcolor=#C0C0C0>F</td><td align=center bgcolor=#C0C0C0>G</td><td align=center bgcolor=#C0C0C0>H</td><td align=center bgcolor=#C0C0C0>I</td><td align=center bgcolor=#C0C0C0>J</td><td align=center bgcolor=#C0C0C0>K</td><td align=center bgcolor=#C0C0C0>L</td><td align=center bgcolor=#C0C0C0>M</td><td align=center bgcolor=#C0C0C0>N</td><td align=center bgcolor=#C0C0C0>O</td></tr><tr><td align=center bgcolor=#C0C0C0>17</td><td>&nbsp;</td><td align=center>Cpfrequ.</td><td>Maturity
</td><td>&nbsp;</td><td>Coupon1
Q1</td><td>&nbsp;</td><td>Coupon2
Q2</td><td>&nbsp;</td><td>Coupon3
Q3</td><td>&nbsp;</td><td>Coupon4
Q4</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>18</td><td align=center>AL8</td><td align=center>4</td><td>23.12.2035</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>19</td><td align=center>Ar3</td><td align=center>4</td><td>29.11.2011</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></td></tr></table></blockquote></P>

... soll in die Zellen der Spalten H bis N ein "berechnetes" Datum eingetragen werden.

D.h., aus dem in F18 stehenden Datum wird der Monat (intMonat <- hier "12") und der Tag (intTag <- hier "23") extrahiert - aus A1 wird noch intJahr gezogen (hier: 2006). Dann wird geschaut, wie oft im Jahr Zinsen bezahlt werden (Spalte E <- intCpFreq <- hier: "4").

Dann soll das Datum mit leichten Modifikationen zusammengesetzt und in die jeweilige Spalte geschrieben werden.

Und genau hier
.Cells(i, 8).Value = WorksheetFunction.Date(intJahr, intMonat, intTag)
steigt der Code mit der Fehlermeldung "Laufzeitfehler '438' - Objekt unterstützt diese Eigenschaft oder Methode nicht" aus.

Auch ein
.Cells(i, 8).Value = CDate(WorksheetFunction.Date(intJahr, intMonat, intTag))
funktioniert leider nicht. :confused:

Wie muß ich den Code ändern, damit das Datum in die jeweilige Zelle geschrieben wird?

Wenn jemand eine Formel hat, mit der ich die Anforderung erfüllen kann, so würde ich mich auch darüber sehr freuen. :)

Danke schon einmal im Voraus.

cu
myfake

jinx
13.07.2006, 17:52
<font size="2" face="Century Gothic">Moin, myfake,

.Cells(i, 8).Value = DateSerial(intJahr, intMonat, intTag)
ist augensdcheinlich nicht des Rätsels Lösung, oder?</font>

myfake
14.07.2006, 08:14
Hallo jinx,

jawoll, das war es :top:

Herzlichen Dank für die Hilfe.

cu
myfake