返回列表 上一主題 發帖

[發問] excel VBA 自動更新篩選問題

本帖最後由 n7822123 於 2021-7-22 00:01 編輯

回復 3# jsc0518

我是想說,有甚麼方式是可以讓VBA只認定我第一次取消的選項,而其他選項出來時,是無作動的

篩選條件不會去記錄 你 "取消" 的,只會記錄"現有" 的

如果你原本有 A、B、C ,3個條件,你把C取消了,Excel的篩選條件會紀錄成 "要A、也要B",而不是 "不要C"

資料篩選的本意=從現有的資料去過濾

如果資料只有A、B、C,就算用VBA寫篩選條件,多一個D條件,Excel也是不認帳的

所以當資料有變動時,只能用VBA "重寫條件"

程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

本帖最後由 n7822123 於 2021-7-25 21:47 編輯

回復 18# jsc0518

這討論串還活著阿,看了一下,感覺搞複雜摟~~

只要想辦法記錄 "使用者不要的" 選項,再重新設定篩選條件就好了呀~

弄一個給你們參考看看吧,放棄原本手動用第一列篩選的功能,用表單篩選


1.任一欄點選兩下左鍵跳出表單
2.表單會自動抓第2列的 "資料篩選清單",並秀出來給你選擇
3.把"要的"打勾,按確定即可完成篩選 (程式會自動記錄你"不要"的)
4.假設該欄資料沒有ItemA,但是清單有打勾,該欄多了一筆資料ItemA,也不會自動隱藏
5.支援擴充N欄,不限"AF"欄,但是若該欄沒有"資料篩選清單",表單上不會有東西給你勾
6.設定條件可以紀錄到檔案關閉,亦即檔案關閉再開啟,需要重新設定
7.目前只支援1個表格,若要支援多表格,請自行擴充模組"儲存List",取不同模組名稱即可
   Ex:"表2儲存List"、"表3儲存List" ,如此才能記錄不同表格的 篩選條件(不要的)
8.表單範圍大概支援30個選項,再多應該顯示不出來


Error_阿龍.rar (34.21 KB)
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

本帖最後由 n7822123 於 2021-7-26 00:39 編輯

回復 20# singo1232001

哈,沒錯,好玩就好啦~

我也發現我剛剛的第7項說明不太妥當,紀錄條件用 "工作表的全域變數"比較好

隨著工作表就可擴充了 (該有的事件程式、全域變數要有)

因為主要是選不要的,篩選條件把空白納入(空白不過濾)

更新V2版本~~可自行擴充玩看看,雛形做到這樣就差不多嘍


1.任一欄點選兩下左鍵跳出表單
2.表單會自動抓該欄第2列的 "資料篩選清單",並秀出來給你選擇
3.把"要的"打勾,按確定即可完成篩選 (程式會自動記錄你"不要"的)
4.假設該欄資料沒有ItemA,但是清單有打勾,該欄多了一筆資料ItemA,也不會自動隱藏
5.支援擴充N欄,"不限AF"欄,但是若該欄地2列沒有"資料篩選清單",表單上不會有東西給你勾
6.設定條件可以紀錄到檔案關閉,亦即檔案關閉再開啟,需要重新設定
7.目前可支援2個表格,若有更多表格,請自行擴充工作表內的程式、變數即可~~
8.表單範圍大概支援秀出30個選項,再多應該顯示不出來,可自行修改表單 & 表單程式


Error_阿龍V2.rar (42.06 KB)
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

回復 20# singo1232001

你的我也玩一下,我把"生產中"取消篩選,再把AF欄位某一格選成 "生產中"

結果篩選條件又有"生產中"拉~~
程式是依需求寫的,需求表達不清楚
或者沒有上傳附件,愛莫能助

TOP

        靜思自在 : 知識要用心體會,才能變成自己的智慧。
返回列表 上一主題