ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] excel³øªí¶]¥¨¶°§e²{Delay§å»Pµê±b

¥»©«³Ì«á¥Ñ ­ã´£³¡ªL ©ó 2015-10-2 22:28 ½s¿è

¤£¦n¼g¡A¬Ý±o²´ªá¡ã¡ã
¢°¡DÄæ¦ì¤Ö¤F¡eQVS¡fÄæ¡A½Ð¸É¤W¡F¡e½d¨Ò³øªí¡f¢Û¡G¢åÀ³¦@¢°¢°­ÓÄæ¦ì
¢±¡D¡e¤é´Á¡fÄæ©Î¨ä¥LÄæ¦ìÄÝ¡e¤å¦r®æ¦¡¡fªÌ¡A½Ð¨Æ¥ý³]©w¡A§_«h¸ê®Æ®æ¦¡·|§ïÅÜ¡A
¡@¡@¥t¡A¡e¤é´Á¡f¨S¦³¦~¥÷¡A¹J¸ó¦~¤ñ¹ï·|¦³°ÝÃD¡A¥Ø«e¥ý¹w§P¡eINPUT¡f¤é´Á¤£·|¤j¤_¡e¤µ¤é¡f¡Ä§Y¥¼¨Ó¤é¡I
¢²¡DSelect Case ¥Îªº¬O¡eÄæ¦ì¡f°Ï§O¡A¦Û¦æ¥h»{¦U¤£¦P¸ê®Æ¸s²ÕªºÄ渹°Ï°ì
¢³¡Dµ{¦¡½X¬Ý°_¨Ó¦³ÂI½ÆÂø¡A¦ýªÖ©w³£¬O°ò¥»»yªk¡A½Ð¦Û¦æ°Ñ°uµø¹ê»Ú­×§ï¡A®¤¤£¦Aµù¸Ñ¤Î»¡©ú
¡@
  1. Sub °õ¦æ()
  2. Dim Arr, Brr(0, 1 To 32), j&, Jm%, k&, Km%, TT$, QD, QA, QB
  3. Call ²M°£
  4. Dim X As New Application
  5. With X.Workbooks.Open(ThisWorkbook.Path & "\½d¨Ò³øªí.xls", ReadOnly:=True)
  6.      Arr = .Sheets(1).UsedRange.Columns("A:BM").Cells
  7.      .Close 0
  8. End With
  9. For j = 9 To UBound(Arr)
  10. ¡@¡@If Arr(j, 1) = "PKG Type :" Then TT = Arr(j, 4)
  11. ¡@¡@If Arr(j, 1) Like "#######" = False Then GoTo 101
  12. ¡@¡@
  13. ¡@¡@QD = Date
  14. ¡@¡@If IsDate(Arr(j, 9)) Then QD = DateValue(Arr(j, 9))
  15. ¡@¡@If QD > Date Then QD = DateValue(Year(Date) - 1 & "/" & Arr(j, 9))
  16. ¡@¡@If Date - QD > 3 Then QD = 1 Else QD = 0
  17. ¡@
  18. ¡@¡@QA = 0:¡@QB = 0:¡@Km = 1:¡@Brr(0, 1) = TT:¡@Brr(0, 32) = Date
  19. ¡@¡@For k = 1 To UBound(Arr, 2)
  20. ¡@¡@¡@¡@Select Case k
  21. ¡@¡@¡@¡@¡@¡@Case 1, 3, 4, 9, 10
  22. ¡@¡@¡@¡@¡@¡@¡@¡@Jm = 1
  23. ¡@¡@¡@¡@¡@¡@Case 13 To 23
  24. ¡@¡@¡@¡@¡@¡@¡@¡@Jm = 1:¡@QA = QA + Val(Arr(j, k))
  25. ¡@¡@¡@¡@¡@¡@Case 30 To 32, 35 To 39, 42 To 45, 50 To 65
  26. ¡@¡@¡@¡@¡@¡@¡@¡@QA = QA + Val(Arr(j, k))
  27. ¡@¡@¡@¡@¡@¡@Case 24 To 29, 33, 34, 40, 41, 46 To 49
  28. ¡@¡@¡@¡@¡@¡@¡@¡@Jm = 1:¡@QA = QA + Val(Arr(j, k)):¡@QB = QB + Val(Arr(j, k))
  29. ¡@¡@¡@¡@End Select
  30. ¡@¡@¡@¡@If Jm > 0 Then Km = Km + 1:¡@Brr(0, Km) = Arr(j, k):¡@Jm = 0
  31. ¡@¡@Next k
  32. ¡@¡@If QA > Arr(j, 10) Then ['Virtual Result'!A65536].End(xlUp)(2).Resize(1, 31) = Brr
  33. ¡@¡@If QB > 0 And QD = 1 Then ['Delay Result'!A65536].End(xlUp)(2).Resize(1, 32) = Brr
  34. 101: Next j
  35. Beep
  36. End Sub

  37. '¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×¡×
  38. Sub ²M°£()
  39. Sheets("Virtual Result").UsedRange.Offset(1, 0).ClearContents
  40. Sheets("Delay Result").UsedRange.Offset(1, 0).ClearContents
  41. End Sub
½Æ»s¥N½X

TOP

        ÀR«ä¦Û¦b : °ß¨ä´L­«¦Û¤vªº¤H¡A¤~§ó«i©óÁY¤p¦Û¤v¡C
ªð¦^¦Cªí ¤W¤@¥DÃD