看板 Office 關於我們 聯絡資訊
軟體:Excel VBA 遇到的問題 1. 每期資料的表頭欄位是固定的 2. 每期資料量都不同,所以列數會往下新增或減少 3. 資料都會有表尾總計數 現在是直接用VBA錄製動作 1. 用資料篩選,選擇表尾的表格顏色,然後整列刪除 2. 再解除資料篩選,繼續後續的資料整理 但發現這樣range還是只會記憶被刪除的那一列,而不是依每次篩選出來的表尾。 想請問各位大大,只想取表頭跟表尾中間的資料的話可以怎麼整理,感謝~~~~~ https://i.imgur.com/5HnAn92.jpg -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.125.20 ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.73.125.20 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1549931214.A.18D.html
soyoso: 是指要確定表尾的列號嗎?(因為問題寫到列數會往下新增或02/12 08:34
soyoso: 減少)02/12 08:35
soyoso: 如果是的話,range.end、range.find,有連續資料的話,也02/12 08:35
soyoso: 可配合工作表函數count或counta02/12 08:36
※ 編輯: pipipipig (42.73.196.130), 02/12/2019 09:07:47
pipipipig: 不好意思文字太抽象,更新一下圖 02/12 09:10
pipipipig: 就是每期列1固定,然後列261跟列262都是不要的,所以 02/12 09:12
pipipipig: 會篩選顏色再刪除 02/12 09:12
soyoso: 希望是取1:260的資料嗎,如以連結來看的話a1:j260? 02/12 09:16
soyoso: 其他的如篩選顏色再刪除這方面會執行嗎?亦或不要執行而要 02/12 09:18
soyoso: 取出a1:j260的資料? 02/12 09:18
pipipipig: 取A2:A260,A2每期都固定,然後A260會往下延伸或是減 02/12 09:19
pipipipig: 少列數 02/12 09:19
pipipipig: 打錯,是J260不是A260,拍謝拍謝!! 02/12 09:20
soyoso: 以連結來看j261和j262方面是不會鍵入資料嗎? 02/12 09:28
soyoso: 如果不會的話 02/12 09:29
soyoso: 以range("a2:j" & [j1048576].end(xlup).row) 可取得 02/12 09:29
soyoso: 或是以range("a2",[j1048576].end(xlup)) 02/12 09:31
soyoso: range.end方面以可以range.find,或以有連續資料的某欄以 02/12 09:37
soyoso: 工作表函數count或counta來計數(有可能需減不計入的列,如 02/12 09:38
soyoso: 表頭尾的列數) 02/12 09:39
pipipipig: 表單後續會再就A2:J的中間下公式和插入欄整理分類,所 02/15 08:01
pipipipig: 以目標不是刪除黃色列,而是為了只取A2到J下公式運算 02/15 08:01
pipipipig: ,但每期都J的列數都會變。如果範圍這樣取是不是會取 02/15 08:01
pipipipig: 到不要的黃色列? ("a2:j" & [j1048576].end(xlup).row 02/15 08:01
pipipipig: ) 02/15 08:01
pipipipig: 謝謝~~ 02/15 08:02
soyoso: 這不一定,就要看黃色列的j欄(是否有鍵入資料,這也是我之 02/15 08:13
soyoso: 前回文所詢問的問題),所提供的寫法也如回文假設,如果不 02/15 08:14
soyoso: 會的話下的情況 02/15 08:15
soyoso: 所以如果黃色的j欄是有鍵入資料(這裡的資料也保括公式)的 02/15 08:17
soyoso: 話,就改以a:i欄內來判斷最後一筆有值的列號,但條件如下 02/15 08:18
soyoso: 1.需黃色列第一列上方是有資料,2.黃色列該欄是沒有資料的 02/15 08:20
soyoso: 以連結來看a:i第一列上方有資料,看起來是除了b和i沒有 02/15 08:22
soyoso: 而2該欄沒有資料來看為d和e。就調整成這二個條件符合下的 02/15 08:23
soyoso: 欄來取得最後一筆有值的列號 02/15 08:24
soyoso: 實際也可能都沒有符合的條件,那就改以判斷任一欄最後一筆 02/15 08:26
soyoso: 有值的列號(有可能包含黃色列,且有資料的條件也固定都會 02/15 08:27
soyoso: 出現在黃色列內),該列號減出現於黃色列內的筆數 02/15 08:27
pipipipig: 修改後成功取到值了!!!謝謝s大!! 02/18 20:57