2016-06-20 1 views
0

いくつかの条件に基づいて日付を変更したいと思います。日が15以上であれば日が15であるべきで、それが15未満であれば日が1 私が書かれているされ、このためのコードであるべきことは次のとおりです。私のシステムのためのvbaの日付を変更するには

date1 = ActiveSheet.Cells(k, 2).Value 
tempArr = Split(date1, "/") 
If (tempArr(2) < 15) Then 
    reqdDate = tempArr(0) + "/" + tempArr(1) + "/01" 
Else 
    reqdDate = tempArr(0) + "/" + tempArr(1) + "/15" 
End If 

その作業罰金日付形式はyyyy/mm/ddです。しかし、他のシステムでは、システム日付としてのクラッシュが異なります。どのようにこの機能を達成する。私は日付の形式を変更しようとしました

tempDate = Format(date1, "yyyy/mm/dd") 

でも、これは動作しません。

答えて

0

これはあなたを助けるかもしれない:

Dim d, reqdDate As Date 
d = CDate(ActiveSheet.Cells(k, 2).Value) 
If (Day(d) < 15) Then 
    reqdDate = DateSerial(Year(d), Month(d), 1) 
Else 
    reqdDate = DateSerial(Year(d), Month(d), 15) 
End If 

私はあなたが日付型の代わりに文字列を使用することをお勧めします。したがって、組み込みの関数を使用することができます。

あなたが操作した日付を持つと、あなたは好きなようにフォーマットできます

関連する問題