LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

實現ListView可編輯功能,想學VBA的朋友千萬別錯過,InkEdit控件

admin
2025年1月28日 13:58 本文熱度 8

內容提要 

  • ListView編輯功能

  • LIstView查詢數據

  • InkEdit控件修改ListView數據

  • 根據ListView數據更新工作表數據

大家好,我是冷水泡茶。
前幾天我們分享過一個關于ListView查詢顯示數據的案例:
VBA實用案例,數據查詢,ListView顯示、篩選數據,查詢結果輸出到工作表
有朋友在后臺留言,希望能增加一個修改按鈕:
?
確實,如果能修改ListView的數據,再更新到工作表,那就相當完美了。
ListView本身不可以編輯,這也是曾經困擾我很久的問題,我幾乎搜遍了整個網絡,終于皇天不負有心人,有大神在網上公布了一個非常好的解決方案,被我給找到了,主要是結合InkEdit控件和Windows窗口API函數來實現,把InkEdit控件覆蓋到點擊的ListView單元格上面,就像直接修改Excel工作表單元格一樣,效果非常好。
在沒找到這種方法之前,我嘗試過用TextBox來輸入內容,但效果不理想,TextBox不能覆蓋到ListView的單元格上面。這種方式我們在「電子發票登記系統(Access版)」中使用過:
這種方法也能達到目的,但使用起來有點別扭。
其實,使用InkEdit控件的方法,我們也分享過一個案例:
Excel VBA 實用項目【收費管理系統】使用說明
在我的「Excel 實用收費項目【財務管理系統注冊版】」中,也使用了InkEdit控件來編輯ListView。
不過,前面提及的案例都是更新Access數據庫,沒有更新Excel表的,今天就乘這個機會分享一波。

用戶窗體

我們在用戶窗體上添加幾個控件:

1、InkEdit控件,這個控件類似于TextBox控件,但它有句柄(Handle)屬性,可以通過API函數來控制它。

2、全選按鈕,點擊選中所有記錄,按鈕變成“全消”,再點擊,取消所有勾選,按鈕變回“全選”。

3、刪除按鈕,刪除選中的記錄。

4、是否修改復選框,勾選則顯示刪除按鈕,同時ListView可編輯,不勾選則隱藏刪除按鈕,ListView不可編輯。復選框的值變化時,同步更新工作表Settings的值。

工作表

1、增加一張工作表Settings,用來保存一些設置選項,目前只有一個“修改狀態”,取值On和Off,當為On時,在啟動用戶窗體是,是否修改復選框處于勾選狀態,反之則不勾選:

2、工作表的CodeName修改了一下,方便直接引用:

基本實現過程

1、用戶窗體啟動時,我們把數據表shData裝入數組,并添加到ListView,同時將月份、姓名添加到兩個復合框的List,供下拉選擇。

2、當我們點擊ListView的ListItem時,如果是否修改處于勾選狀態,同時點擊的單元格是設定為允許編輯的,則在其上顯示InkEdit控件,我們在InkEdit中輸入新的值(看上去就像在ListView中輸入一樣),按回車或方向鍵或鼠標點擊其他單元格,則完成修改。如果連續按擊Esc鍵兩次,則取消修改。

3、修改內容會立即更新到工作表。

完整代碼文本,詳見另一條推文。

寫在最后

1、我們實現了ListView的編輯功能,同時更新工作表,我們沒有做“新增”功能,即在工作表中新增一條記錄,主要是考慮直接在工作表中新增記錄會更方便一些。如果是更新數據庫,那么“新增”功能是必不可少的。

2、我們的編輯功能還是比較簡陋,需要純手工輸入。還可以進一步優化,比如:

(1)日期采用「日期控件」來輸入。

(2)姓名、性質、狀態,可以使用下拉列表輸入,可以在Setting表中添加相應的選項。

(3)金額,進行一些合規性校驗,確保輸入的是數字。

(4)如果有計算關系的字段,如數量*單價等于金額,我們可以通過數據、單價的變化來自動計算金額。

3、上述優化項目,由于時間關系,加之我們在以前的案例中也分享過,就不打算再搞了。感興趣的朋友可以自己摸索,有問題可以留言討論,如果自己搞不定,但是又急需使用這樣的功能的,歡迎付費定制,價廉物美、童叟無欺

4、本案例實現ListView可編輯的方法,參考自EXCELHOME的一個貼子,我把網址放在這,感興趣的朋友可以去看看,樓主解釋得非常全面:

https://club.excelhome.net/thread-1423746-1-1.html

~~~~~~End~~~~~~


閱讀原文:原文鏈接


該文章在 2025/2/5 17:01:29 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
综合激情亚洲丁香社区 | 日本久久综合网站 | 色婷婷久久久swag精品 | 亚洲国产一区heyzo | 亚州性视频在线 | 亚洲人成色77777在线观看 |