[問題] VBA 刪除表格中的連續列

看板Office作者 (主席)時間5年前 (2019/03/24 23:31), 5年前編輯推噓0(008)
留言8則, 2人參與, 5年前最新討論串1/1
軟體: EXCEL 2007 我想要刪除表格物件中,位在最下方空白沒有用到的列 我寫了以下Loop: cod=表格總列數 sheet1N=資料總筆數 k = 1 Do k = k + 1 Selection.ListObject.ListRows(sheet1N + 1).Delete Loop Until k = cod - sheet1N + 1 這個程序可以完成任務 但是速度超慢,慢到我都懷疑人生了!! 不知道有沒有甚麼更快速的方法呢? 還有這代表loop迴圈的運算是很慢的嗎? 感謝各位!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.71.118.3 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1553441464.A.375.html

03/24 23:52, 5年前 , 1F
那不要用迴圈,複製要的資料到新工作表,刪除原工作表
03/24 23:52, 1F

03/24 23:52, 5年前 , 2F
新工作表更名同原工作表名稱
03/24 23:52, 2F

03/24 23:57, 5年前 , 3F
有資料總筆數(sheet1N)和表格總列數(cod)應也可以rows
03/24 23:57, 3F

03/24 23:58, 5年前 , 4F
sheet1N+1 & ":" & cod 的方式delete
03/24 23:58, 4F

03/25 00:05, 5年前 , 5F
Listrows() 好像不支援 1:20 這種用法
03/25 00:05, 5F
※ 編輯: o1o3o1o31030 (111.71.118.3), 03/25/2019 00:06:26

03/25 00:13, 5年前 , 6F
我自答 我找到答案了
03/25 00:13, 6F

03/25 00:14, 5年前 , 7F
Selection.ListObject.Range.Rows("15:20").Delete
03/25 00:14, 7F

03/25 00:14, 5年前 , 8F
謝謝S大
03/25 00:14, 8F
文章代碼(AID): #1SbwAuDr (Office)