I've just checked my code and can't see anything obvious, so I would assume that the values could not be converted into times.

Therefore I would recommend using a bit of validation, possibly like this:
VB Code:
  1. Dim sTime as String
  2. Dim sTempTime as String
  3. With MSFlexGrid1
  4.   sTime = "0:00:00"
  5.   sTempTime = Format$(.TextMatrix(r, firstcol),"####0:00:00")
  6.   If IsDate(sTempTime) Then    sTime = sTime + CDate(sTempTime)
  7.   sTempTime = Format$(.TextMatrix(r, secondcol),"####0:00:00")
  8.   If IsDate(sTempTime) Then    sTime = sTime + CDate(sTempTime)
  9.   If Left$(sTime,2) = "::" Then sTime = Mid$(sTime,2)
  10.   .TextMatrix(r, totalcol) = sTime
  11. End With
If you still get an error, you should let me know which line it occurs on, and what the text values are.