|
ご回答、ありがとうございました!
早速、DateAdd関数を用いて試してみました。
まず任意の日付からではなく、
現在の日付からの1年半後として、
(正確にはマイナス1日)
Mydate=date
とすると、スムースに進み、ちゃんと1年半後の
日付を取得できたのですが、セルA1に入力した
任意の日付からの1年半後となると、うまくいかないんです。
Mydate=#mm/dd/yy#
と記述すると、任意の日付を取得できるとのことなのですが、
エクセル上のセル(1,1)に入力した日付を格納するとなると
私にはmid関数を用いて「mm」「dd」「yy」を
それぞれ個々に取得する方法しか
思い浮かばず、下記のようなマクロを組んでみました。
mid関数はstringの型を用いるとのことなので、
型を変換しながら進めるマクロなのですが、
Mydate = K3
のところで止まってしまいます。
型が合わないのかと思い、Variant型にしてみたのですが、
やはり止まってしまいます。
どうしたらよいのでしょうか?
ご回答頂ける方、お返事お待ちしております。
Dim K1 As Long
Dim K2 As String
Dim K3 As Variant
Dim Mydate As Date
K1 = WS1.Cells(1, 1)
K2 = CStr(K1)
K3 = "#" & Mid(K2, 5, 2) & "/" & Mid(K2, 7, 2) & "/" & Mid(K2, 3, 2) & "#"
Mydate = K3 'ここで止まってしまいます。
Mydate = DateAdd("yyyy", 1, Mydate)
Mydate = DateAdd("m", 6, Mydate)
Mydate = DateAdd("d", -1, Mydate)
WS1.Cells(1, 2) = Mydate
|
|