Re: [算表] excel用VB寫刪除為0和空白的列

看板Office作者 (windknife18)時間14年前 (2011/12/08 15:35), 編輯推噓4(406)
留言10則, 3人參與, 最新討論串2/2 (看更多)
刪除最好由後面往前刪除, 還有 If 後面的寫錯囉, 試試看下面的寫法 Sub LoopRange() x = 3000 While x > 0 If Cells(x, 3).Value = "" Or Cells(x, 3).Value = "0" Then Cells(x, 3).EntireRow.Delete End If x = x - 1 Wend End Sub ※ 引述《JJabrams》之銘言: : 軟體: : excel 2003 : 想請問一下大家我這樣的程式碼有什麼問題? : 目的是想要把第三欄內,每一列內容為0或者"空白"的列刪除 : 我寫了一個簡單的Loop卻跑不起來 : 程式碼如下: : Sub LoopRange() : x = 2 : Do While x < 3000 : If Cells(x, 3).Value = "" Or "0" Then : Cells(x, 3).EntireRow.Delete : x = x + 1 : End If : Loop : End Sub : 當x>3000後停止這個迴圈 : 還請大家幫我解答一下 : 感謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.146.144

12/08 20:36, , 1F
我都用Union在一次刪除, 這樣就不用考慮前後的問題了
12/08 20:36, 1F

12/08 20:46, , 2F
感謝你的幫忙!!不過我還沒有試過(現在的電腦沒有VB)
12/08 20:46, 2F

12/08 20:46, , 3F
下次試試看!!!!非常之感謝
12/08 20:46, 3F

12/08 20:47, , 4F
請問一下一樓Union是什麼意思?
12/08 20:47, 4F

12/09 08:18, , 5F
Union是合併範圍到一個變數中
12/09 08:18, 5F

12/12 09:28, , 6F
我今天測試了一次這段程式碼,還是沒有辦法跑耶
12/12 09:28, 6F

12/12 09:29, , 7F
但是這次excel沒有通知有錯誤,只是他會卡住跑不完,也
12/12 09:29, 7F

12/12 09:29, , 8F
沒有資料被刪掉
12/12 09:29, 8F

12/12 09:37, , 9F
我又測試了一下,這個行的通!!!!!
12/12 09:37, 9F

12/12 09:37, , 10F
原來是我的電腦跑太慢害我以為他當機了
12/12 09:37, 10F
文章代碼(AID): #1Eu6YyjO (Office)
文章代碼(AID): #1Eu6YyjO (Office)