Board logo

標題: 時間資料之統計 [打印本頁]

作者: b9208    時間: 2011-11-10 13:24     標題: 時間資料之統計

[attach]8495[/attach]各位先進您好
附件為時間資料之統計
時間資料有當日及跨日完成且資料格內有N/A文字。
請教問題如附件內說明
懇請幫忙
非常感謝
作者: luhpro    時間: 2011-11-10 21:46

回復 1# b9208
如附檔.
[attach]8497[/attach]
須留意的是程式中將 自 00:00 ~ 09:59 (含) 間的時間都視為 第二天.
作者: b9208    時間: 2011-11-10 23:10

回復 2# luhpro
感謝前輩幫忙
程式可以使用
利用第一個數字=0,則加1。高竿。
多感
作者: b9208    時間: 2011-11-11 14:57

回復 2# luhpro

請教下式中2.9999 代表為何
Cells(16, 2) = 2.9999
謝謝
作者: luhpro    時間: 2011-11-12 07:02

回復  luhpro
請教下式中2.9999 代表為何
Cells(16, 2) = 2.9999
b9208 發表於 2011-11-11 14:57

因為儲存格的時間資料是用 1 以下的小數來表示,
這可以用先在儲存格中輸入時間,
再將該儲存格格式改為 "G/通用格式" 即可得知.

而若先輸入 1(或比1大的數字) 再改為時間格式,
則會發現內容變成有日期(例如輸入 24:00 則會自動轉換成 1900/1/1 00:00:00)的情形.

在首篇本例檔案中會出現 "跨日" 的情形,
所以 Cells(16, 2) 的初設極大數(因為此格要放最小時間, 所以其初值必須保證比所有需要比較的時間資料都大)不能只大於 1,
原先來說若以 10:00 為隔日最大時間來計算,
則僅須設為大於 1.416 即可,
我設為 2.9999 只是個人習慣總是會想多預留一些餘裕罷了.

而也因為若數字大於 1 時會多出現非必要的日期資訊(有影響之後若需比較或計算的疑慮),
所以底下多了一段去掉整數部分以確保只留下時間資料(純小數)的程式.
作者: b9208    時間: 2011-11-12 08:28

回復 5# luhpro
非常感謝
了解,
另請教〞所以底下多了一段去掉整數部分以確保只留下時間資料(純小數)的程式.〞
指的是那一段?
作者: luhpro    時間: 2011-11-12 08:54

回復 6# b9208
  1.   For Each vValue In Range("B11:D18")
  2.     If vValue >= 1 Then
  3.       Cells(vValue.Row, vValue.Column) = vValue - Int(vValue)
  4.     End If
  5.   Next vValue
複製代碼

作者: b9208    時間: 2011-12-2 08:48

回復 7# luhpro
前輩
請教下列問題
If .Text <> "N/A" Then
增加條件 "Other" 修改為
If .Text <> "N/A" or .Text <> "Other" Then
執行上錯誤
敬請協助
謝謝




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)