返回列表 上一主題 發帖

VBA 當2個條件一樣時,自動尋找輸入 3 程式修改

回復 3# man65boy
請參考
20181128-1.rar (23.23 KB)

TOP

回復 4# 准提部林

回準大的話,表單最高一天有近千筆的資料,有些早上輸入後,晚上7點多才回報時間結束,所以在資料很多還沒結束時,以前都是用"尋找"功能,想說使用表單是配合公司採用條碼機輸入,所以使用上,會比工作表輸入還要來的快,這個問題在http://forum.twbts.com/thread-16895-1-1.html   VBA 當2個條件一樣時,自動尋找輸入 2  有老師們以幫小弟解決了這項表單的製作,只是最近發現出小問題點改善,請大大幫忙,謝謝!

TOP

在工作表表格直接輸入及操作不是更方便???
用表單覺得反而礙手~~

TOP

回復 2# Kubi

謝謝大大的熱心回答,小弟功力尚淺,無法透徹理解,更改過後程式是無法運行的(有不正確的屬性),請老師再次幫忙,謝謝你!

TOP

回復 1# man65boy
每當開啟檔案會透過ThisWorkbook的Open事件記錄兩個字典物件資料,此時執行輸入按鈕會正常寫入主頁工作表中。
但是當你以手動去刪除主頁中的資料,lRows&及兩個字典檔 vDIO & vDPeo 此時並沒有同步更新成你刪除後的資料,
亦即它會保存你還未刪除前的資料,這會讓lRows、vDIO、vDPeo的資料內容失真。
如再次執行輸入按鈕時會以字典檔中的舊資料來比對,如此就會產生無法預期的結果。

我並沒有去實際了解你程式運作方式,不過大方向來講應可透過下列方式予以改善:
1.將ThisWorkbook的Open事件內所有程式碼,移往UserForm1的Initialize事件程序中,同時將ThisWorkbook模組內的Open事件全部清空。
2.將Module1模組內的所有全域型公用變數移往UserForm1模組內的上端,並將之前宣告的Public改為Dim lRows&、Dim vDIO、Dim vDPeo,
因為此3個變數的生命週期只須存在此UserForm1模組中即可,完成後再將Module1模組內所宣告的公用變數全數清除。

以上淺見供參

TOP

        靜思自在 : 人的心地是一畦田,土地沒有播下好種子,也長不出好的果實。 -
返回列表 上一主題