返回列表 上一主題 發帖

記錄表建立問題請教

記錄表建立問題請教

各位前輩好
後學虛擬了一個簡易的動物醫院看診記錄做學習,有一些疑問想請教各位前輩
1.自訂表單彈出後如何讓游標直接在輸入窗上!不必再滑鼠點輸入窗
2.後學使用一個可產生程式碼的方法,因應使用者的需求更動欄位,不必改程式碼
    請教各位前輩有沒有其他方法?
3.自動計算一個月內的寵物生日變底色 有時會有差一天的問題!如何精算?
4.執行速度如何提升?縮短時間!
5.程式碼可如何精簡?或修正錯誤?
6.其他未提出的問題後續再提出

謝謝各位前輩指導
祝 中秋佳節 平安喜樂

記錄表_20220908.zip (581.56 KB)


PS:職場上的工作資料不方便作範例發帖學習,虛擬情境作學習

1.自訂表單彈出後如何讓游標直接在輸入窗上!不必再滑鼠點輸入窗

TOP

2.後學使用一個可產生程式碼的方法,因應使用者的需求更動欄位,不必改程式碼
    請教各位前輩有沒有其他方法?

Option Explicit
Sub 自動產生標題CODE()
Dim i&, x&, 輔助表標題欄rr, 輔助表變數欄rr, Coderr, 列數&
Sheets("Code生成輔助表").Select
輔助表標題欄rr = Range([AA1], Cells([AA65536].End(xlUp).Row, "AA"))
輔助表變數欄rr = Range([AB1], Cells([AB65536].End(xlUp).Row, "AB"))
ReDim Coderr(1 To UBound(輔助表標題欄rr) * 5, 1 To 1)
Coderr(1, 1) = "Option Explicit"
Coderr(2, 1) = "Public 輔_標題rr, 操_標題rr, 標題辨識輔助NO, 標題辨識輔助rr, 停頓時間& , Acc&, Asrc&"
列數 = 3


~~~~~

TOP

回復 2# Andy2483

Private Sub UserForm_Activate()
' 自訂表單彈出後 讓游標直接在輸入窗上!不必再滑鼠點輸入窗
TextBox1.SetFocus
For i = 1 To 8
   Set List(i) = 輸入清單("List" & i)
Next

End Sub

TOP

回復 3# Andy2483

更動結果欄位  不知道 是不是你要的 試試看吧
   
'[A1].Resize(UBound(Coderr), UBound(Coderr, 2)) = Coderr
y = Application.InputBox("請輸入欄位:")
Cells(1, CInt(y)).Resize(UBound(Coderr), UBound(Coderr, 2)) = Coderr


Set Coderr = Nothing
End Sub

TOP

回復 4# 軒云熊
謝謝前輩指導
星期二才能在PC上測試學習

TOP

回復 5# 軒云熊
謝謝前輩指導
後輩沒表達清楚,再用另一個方式說明
1.由於公司主管或使用者在整個程式碼已經寫的很複雜的情況下,硬是要增加欄位或更動欄位!改程式碼會很麻煩,
所以就安插了很多的備用欄先隱藏,以備主管增加欄位,但欄位更動還是要改程式碼
2.後學想到標題列的每個抬頭都不一樣,所以用抬頭列來辨識資料欄有沒有變動
3.因為每次新的專案都要重新寫一次辨識欄位的程式碼,所以就將操作表的抬頭列轉置到輔助表AA欄,AB欄的文字定義為容器,自動用程式碼辨識輔助表寫成程式碼在新活頁簿
4.將3所產生的程式碼複製貼到VB裡使用

以上是後學暫時想到的辦法,能方便解決 增加欄位或變動欄位的需求!不必大幅度改動既成的程式碼

重點是 各位前輩是如何在程式碼寫的很複雜的時候配合使用者需求 增加欄位或欄位調前調後?

TOP

回復 4# 軒云熊

SetFocus在範例裡好像也有!
後學是使用多年前收藏 的很精簡的版主範例 五層清單 ,改成自己看的懂又能符合需求的零落碼。
學了很多年,進步緩慢!幾乎都是抄襲前輩們的範例先套用可以用再更深入了解,
不是譁眾取寵,也不是要得積分!
單存是後學程度不好!用自己的方法逼自己學習。
還有多個先前前輩幫忙解決指導的程式碼都還看不懂,又不想放棄學習。
謝謝前輩們的指導

TOP

回復 4# 軒云熊


    謝謝前輩指導
測試OK!

TOP

回復 5# 軒云熊


    謝謝前輩指導
今日習得解決問題2.的方法,並提升效能
"2.後學使用一個可產生程式碼的方法,因應使用者的需求更動欄位,不必改程式碼請教各位前輩有沒有其他方法?"
http://forum.twbts.com/thread-23775-1-1.html

記錄表_20220923_2.zip (173.62 KB)

TOP

        靜思自在 : 有願放在心裡,沒有身體力行,正如耕田不播種,皆是空過因緣。
返回列表 上一主題