- ©«¤l
 - 50 
 - ¥DÃD
 - 10 
 - ºëµØ
 - 0 
 - ¿n¤À
 - 69 
 - ÂI¦W
 - 0  
 - §@·~¨t²Î
 - Windows XP 
 - ³nÅ骩¥»
 - Office 2007 
 - ¾\ŪÅv
 - 20 
 - ©Ê§O
 - ¨k 
 - ¨Ó¦Û
 - Taiwan 
 - µù¥U®É¶¡
 - 2010-6-21 
 - ³Ì«áµn¿ý
 - 2015-1-11 
 
  | 
                
¦^´_ 4# hugh0620  
 
 
    ÁÂÁ±zªºÀ°¦£¡A§Ú·Q§ÚÀ³¸Ó¦b³oÃä¨S¦³¼g¿ù§a....¥H¤U¬°§Úªºcode- Public Sub CommandButton1_Click()
 
 - Dim FilePath As String, FileName As String
 
  
- Dim Product As String, Contract As String
 
 - Dim Hr As Long, Min As Long, Sec As Long
 
  
- iYear_s = Val(txtYear_start.Text)
 
 - iYear_e = Val(txtYear_end.Text)
 
 - iMonth_s = Val(txtMonth_start.Text)
 
 - iMonth_e = Val(txtMonth_end.Text)
 
 - iDay_s = Val(txtDay_start.Text)
 
 - iDay_e = Val(txtDay_end.Text)
 
  
- If iYear_s = iYear_e Then
 
 -     Z = iYear_s
 
 -     For J = iMonth_s To iMonth_e
 
 -         If J = iMonth_s Then
 
 -             For K = iDay_s To 31
 
 -         Else
 
 -             For K = 1 To iDay_e
 
 -         End If
 
 - End If
 
 -             'transform number into string
 
 -             txtYear = Z & ""
 
 -             txtMonth = J & ""
 
 -             txtDay = K & ""
 
 -             FilePath = ThisWorkbook.Path & "\"
 
 -              'specify the file name to be "Daily_yyyy_mm_dd.rpt"
 
 -             If J < 10 And K < 10 Then
 
 -                 FileName = "Daily_" & txtYear & "_0" & txtMonth & "_0" & txtDay & ".rpt"
 
 -             ElseIf J < 10 And K >= 10 Then
 
 -                 FileName = "Daily_" & txtYear & "_0" & txtMonth & "_" & txtDay & ".rpt"
 
 -             ElseIf J >= 10 And K < 10 Then
 
 -                 FileName = "Daily_" & txtYear & "_" & txtMonth & "_0" & txtDay & ".rpt"
 
 -             ElseIf J >= 10 And K >= 10 Then
 
 -                 FileName = "Daily_" & txtYear & "_" & txtMonth & "_" & txtDay & ".rpt"
 
 -             End If
 
 -             Product = txtProduct.Text
 
 -             Contract = txtContract.Text
 
 -             ' count total number of worksheets
 
 -             isheetsnumber = ThisWorkbook.Sheets.Count
 
 -             ' free the file number for input
 
 -             iFNumber = FreeFile
 
 -             ' resume if the .rpt file doesn't exist
 
 - On Error GoTo errTrap
 
 -             'input .rpt file
 
 -             Open FilePath & FileName For Input As #iFNumber
 
 -             SheetsName = Mid(FileName, 7, 10) & "f"
 
 -             'small loop to test if the worksheet exists, exists =true otherwise false
 
 -             For iM = 1 To isheetsnumber
 
 -             If ThisWorkbook.Worksheets(iM).Name = SheetsName & "" Then ' &"" transform the number to string
 
 -                 Sheets_Exist = True: Exit For
 
 -             Else
 
 -                 Sheets_Exist = False
 
 -             End If
 
 -             Next iM
 
 -     'if sheet does not exist, then add one
 
 -     If Sheets_Exist = False Then
 
 -             Worksheets.Add.Name = SheetsName
 
 -             ' move to the end
 
 -             ActiveSheet.Move After:=Sheets(isheetsnumber)
 
 -             N = 1
 
 -             While Not EOF(1)
 
 -                 Input #iFNumber, A(N, 1), A(N, 2), A(N, 3), A(N, 4), A(N, 5), A(N, 6), A(N, 7), A(N, 8)
 
 -                 If N = 1 Then
 
 -                     Sheets(SheetsName).Cells(1, 1) = A(1, 4)
 
 -                     Sheets(SheetsName).Cells(1, 2) = A(1, 5)
 
 -                     Sheets(SheetsName).Cells(1, 3) = A(1, 6)
 
 -                     N = N + 1
 
 -                 End If
 
 -                 If A(N, 2) = Product And A(N, 3) = Contract Then
 
 -                     Sec = Val(Left(Right(Str(A(N, 4)), 2), 2))
 
 -                     Min = Val(Left(Right(Str(A(N, 4)), 4), 2))
 
 -                     Hr = Val(Left(Right(Str(A(N, 4)), 6), 2))
 
 -                     A(N, 9) = Str((Hr * 3600 + Min * 60 + Sec) - 31500)
 
 -                     Sheets(SheetsName).Cells(N, 1).Value = Val(A(N, 4))
 
 -                     Sheets(SheetsName).Cells(N, 2).Value = Val(A(N, 5))
 
 -                     Sheets(SheetsName).Cells(N, 3).Value = Val(A(N, 6))
 
 -                     Sheets(SheetsName).Cells(N, 4).Value = Val(A(N, 9))
 
 -                     N = N + 1
 
 -                 End If
 
 -             Wend
 
 -             Close 1
 
 -             N = N - 2
 
 -      End If
 
 -             
 
 -             MsgBox ("Total amount of data is " & Str(N))
 
 - errTrap:
 
 -    Resume Conti
 
  
- Conti:
 
 -         Next K
 
 -      Next J
 
 -    
 
  
- End Sub
 
  ½Æ»s¥N½X |   
 
 
 
 |