» 2014 » 4月 » 15のブログ記事

officeもすでに2013なんですな・・・

とりあえず困ったのが過去のVBAが使えない・・・

いくつか廃止された関数があるようで・・・

とりあえず至急必要だった日付の関数作ってみました。

Function fnc_myDataAdd(strYY As String, strMM As String, strDD As String, strAdd As String) As String

Dim strTmpYY As String
Dim strTmpMM As String
Dim strTmpDD As String

Dim strLDD As String

Dim i As Integer

fnc_myDataAdd = fnc_myDataAdd

strTmpYY = strYY
strTmpMM = strMM
strTmpDD = strDD

For i = 1 To strAdd
strTmpDD = Format(strTmpDD + 1, “00”)
Select Case strMM
Case “01”
strLDD = 31
Case “02”
If IsLeapYear(“20” & strTmpYY) = True Then
strLDD = 29
Else
strLDD = 28
End If
Case “03”
strLDD = 31
Case “04”
strLDD = 30
Case “05”
strLDD = 31
Case “06”
strLDD = 30
Case “07”
strLDD = 31
Case “08”
strLDD = 31
Case “09”
strLDD = 30
Case “10”
strLDD = 31
Case “11”
strLDD = 30
Case “12”
strLDD = 31
End Select

If strLDD < Format(strTmpDD, "00") Then strTmpDD = "01" strTmpMM = Format(strTmpMM + 1, "00") If strTmpMM > “12” Then
strTmpMM = “01”
strTmpYY = Format(strTmpYY + 1, “00”)
End If
End If

Next

fnc_myDataAdd = strTmpYY & “” & strTmpMM & “” & strTmpDD

End Function

でもね、二桁西暦の加算しかできません・・・

適当にいじってみてくださいな。

※インデント消えちゃって見にくくてすみません。