我做了一个记时的程序,每次开始运行的时候从文件里读出上次运行程序的时间值(转成date型)结束把运行程序所用的时间,加上上次程序运行的时间。存入一date型变量M然后写入一个dat文件里。注:m=format(m,"hh:mm:ss")
可当时间值累加超过23:59:59时,
就会出错,变成带日期的形式了
我想要能继续累加该怎么做。比如可以累加到24:xx:xx或更多。也就是说小时可以超过23

解决方案 »

  1.   

    用Currency类型存累计秒数Dim S as Currency  
    Dim M as string   '仅用于显示S=S+S1M= S\3600  & ":" & (S\60) mod 60 & ":" & S mod 60 
      

  2.   

    既然你用了m=format(m,"hh:mm:ss")就是按照,时间算的。
    你要累加的功能,不能用这个方法。
    建议你直接转换成   小时:分钟:秒
      

  3.   

    比如说如果文件里存着25:xx:xx
    我要想把它读入一个date型的话,就不是原来的格式了。我需要它和另一个date型的变量做和。再赋给它,并存盘
      

  4.   

    我想要显示出累计的时间,不带日期的。hh;mm;ss形式的。
      

  5.   

    date型累计过了24小时就会加累计一天了啊!
    如果想要实现你的想法只能把分秒分别累计了啊!
      

  6.   

    Private Sub Command1_Click()
        Dim hh As Long, mm As Long, ss As Long
        '写
        Open "e:\sxs\hh.txt" For Output As #1
        Write #1, hh, mm, ss
        Close #1
        '读
        Open "e:\sxs\hh.txt" For Input As #1
        Input #1, hh, mm, ss
        Close #1
     End Sub
      

  7.   

    用 double dim d as double写:
    d=cdbl(m)
    然后把 d 存入文件中读:
    从文件读入 d
    m = cdate(d)