例如20060312变成日期型的2006-03-12。还有如何比较=<当前日期?

解决方案 »

  1.   

    20060312变成日期型的2006-03-12
    __________________________________
    strDate = left(20060312,4) & "-" & mid(20060312,5,2) & "-" & right(20060312,2)还有如何比较=<当前日期?
    ____________________________________
    多种方法比较:
    1、if CLng(CDate(strDate))<= CLng(Now) then
    2、if strDate <= Now then
    3、if DateDiff("d",Now,strDate)<=0 then
      

  2.   

    Private Sub Command1_Click()
        Dim newDate As String
        
        '1
        newDate = Mid$("20060312", 1, 4)
        newDate = newDate & "-" & Mid$("20060312", 5, 2)
        newDate = newDate & "-" & Mid$("20060312", 7, 2)
        Debug.Print newDate
        
        '2
        If CDate(newDate) <= Date Then
            Debug.Print "<="
        Else
            Debug.Print ">"
        End If
    End Sub
      

  3.   


    Private Sub Command1_Click()
       Dim strDate As String
       Dim strTemp As String   
       Dim DtmDate As Date
           
       strDate = "20051201"
       
       strTemp = Left(strDate, 4) & "-" & Format(Mid(strDate, 5, 2), "00") & "-" & Right(strDate, 2)
       
       If CDate(strTemp) > Now Then
          Debug.Print "大过现在日期"
       ElseIf CDate(strTemp) = Format(Now, "yyyy-m-dd") Then
            Debug.Print "现在日期"
          Else
            Debug.Print "已经过起日期"
       End If
    End Sub
      

  4.   

    Dim d
    d = 20030623
    d = Format(d, "####-##-##")
    Print DateDiff("d", d, Date)   '与当前日期差(天数)
      

  5.   

    楼上,format(d,"yyyy-mm-dd")不行的