- 帖子
- 2848
- 主題
- 10
- 精華
- 0
- 積分
- 2903
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2026-7-25
|
3#
發表於 2015-12-12 12:52
| 只看該作者
在H欄列出錯誤訊息,
用MSGBOX串出一大堆,關閉後忘光光,用處不大!!!
Sub 檢測()
Dim xD, xD1, R&, T$, TM1&, TM2&, i&
R = [C65536].End(xlUp).Row
[H:H].ClearContents
Set xD = CreateObject("Scripting.Dictionary")
Set xD1 = CreateObject("Scripting.Dictionary")
For i = 2 To R
T = Range("C" & i): TM1 = Int(Range("E" & i)): TM2 = Int(Range("G" & i))
If T = "" Or TM1 = 0 Or TM2 = 0 Then GoTo 101
If TM1 < xD(T) Then xD1(T & TM1) = "到期日未排序": GoTo 101
xD(T) = TM1
If xD(T & TM2) = 0 Then xD(T & TM2) = TM1
If xD(T & TM2) <> TM1 Then xD1(T & TM2) = "到期日異常": GoTo 101
101: Next
For i = 2 To R
T = Range("C" & i): TM1 = Int(Range("E" & i)): TM2 = Int(Range("G" & i))
If xD1(T & TM1) <> "" Then Range("H" & i) = xD1(T & TM1)
If xD1(T & TM2) <> "" Then Range("H" & i) = xD1(T & TM2)
102: Next
End Sub
〔製造日〕必須先排序,同編號的〔到期日〕比上面的小,就算異常!! |
|