Re: [算表] EXCEL/VBA/FIND/搜尋/範圍?

看板Office作者 (windknife18)時間14年前 (2012/05/04 20:35), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
另外一種想法, 先 union 在一起刪除, 另外 Application.ScreenUpdating = False 先不要顯是刪除的過程, 也可以加快 ... Dim r As Range Application.ScreenUpdating = False LastRow = Range("A65536").End(xlUp).Row For j = LastRow To 2 Step -1 If TimeValue(Range("A" & j)) < TimeSerial(8, 0, 0) Or _ TimeValue(Range("A" & j)) > TimeSerial(16, 0, 0) Then If r Is Nothing Then Set r = Rows(j) Else Set r = Union(r, Rows(j)) End If End If Next j r.Delete Application.ScreenUpdating = True MsgBox ("完成") ※ 引述《BioWu (過客)》之銘言: : 軟體:EXCEL : 版本:2003 : ------------------------------------------------ : 各位好,手邊遇到一個問題,之前匯入的 TXT 檔中, : Columns A 是時間,但是我要篩選某個範圍的時間資料,其他都不要, : 目前用 FOR NEXT 迴圈寫了如下 : LastRow = Range("A65536").End(xlUp).Row : For j = LastRow To 2 Step -1 : If TimeValue(Range("A" & j)) < TimeSerial(8, 0, 0) Or _ : TimeValue(Range("A" & j)) > TimeSerial(16, 0, 0) Then _ : Rows(j).Delete : End If : Next j : 不過這個很慢,因為我的資料有上千行,後來想用 Find 改寫,可是問題發生了, : 我的 Columns A 的時間是有排序的,不一定是整點開始, : 我要抓 08:00:00 後的第一筆資料,他有的是 08:00:04 之類的, : 然後 Find 我查了一下是不支援大小、於的格式寫法, : 請問各位先進,這樣我該如何下手呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.146.144 ※ 編輯: windknife18 來自: 122.116.146.144 (05/04 20:51)
文章代碼(AID): #1Feyq5e4 (Office)
討論串 (同標題文章)
文章代碼(AID): #1Feyq5e4 (Office)