91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

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

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

內(nèi)容提要 

  • ListView編輯功能

  • LIstView查詢數(shù)據(jù)

  • InkEdit控件修改ListView數(shù)據(jù)

  • 根據(jù)ListView數(shù)據(jù)更新工作表數(shù)據(jù)

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

用戶窗體

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

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

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

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

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

工作表

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

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

基本實現(xiàn)過程

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

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

3、修改內(nèi)容會立即更新到工作表。

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

寫在最后

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

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

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

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

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

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

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

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

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

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


閱讀原文:原文鏈接


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

主站蜘蛛池模板: 成人精品国产亚洲 | 91插插插福利导航 | 国产乱码精品 | 岛国精品一区 | 日韩欧美三区 | 精品日韩 | 精品免费国产影视 | 国产一区二区免费 | 国产欧美综合一 | 午夜宅男在线永久 | 国产自产21区 | 日本亚洲歐洲中文 | 国产不卡一区 | 日韩精品三 | 日本高清在线不卡 | 国国产综合在线观看 | 日韩夜间飞 | 欧美午夜在线视频 | 国产福利片免费看 | 国产综合精品一区二 | 麻花豆传媒mv在 | 国产午夜福利不 | 日韩精品成人亚洲毛 | 日本三级国产乱伦 | 日本伦理电影片观看 | 蜜桃视频在线观看 | 国产乱子伦视频三区 | 日韩金码三区 | 国产主播一| 抖音短剧| 日韩乱妇乱女 | 成人午夜福利看片 | 日韩午夜激情视频 | 国产农村一 | 国产一区二区成人 | 成人看片黄a免费看 | 国产精品色女人 | 99福利免费视频 | 欧美亚洲综合一区 | 国产日韩一区 | 福利导航在线观看 |