[英]Excel VBA Text Boxes
我正在嘗試使用帶有兩個文本框的userform在excel VBA中創建一個計算器,我剛創建了numpad,當我點擊1時,它會在文本框1中輸入數字1,但是當我選擇文本框2和然后再次選擇數字1,它將在文本框1中輸入它,而不是我的光標所在的文本框2。 任何人都知道如何使用setFocus之類的東西或沿着這些行的任何東西在光標設置的任何文本框中輸入數字,謝謝。
Private Sub CmdBtn1_Click()
txt_Num1.Value = txt_Num1.Value + "1"
End Sub
我正在尋找在單擊數字時輸入光標所在的任何文本框中的數字。
這是非常原始的,但它應該讓你開始朝着正確的方向。 這將是您的用戶表單中的代碼隱藏。
Dim currentTextBoxName As String
Private Sub CommandButton1_Click()
Dim currentControl
Set currentControl = Controls(currentTextBoxName)
currentControl.Value = "1"
End Sub
Private Sub TextBox1_Enter()
currentTextBoxName = "TextBox1"
End Sub
Private Sub TextBox2_Enter()
currentTextBoxName = "TextBox2"
End Sub
這假定您的兩個文本框名為“TextBox1”和“TextBox2”。 顯然,有更好的方法(更加萬無一失)傳遞TextBox_Enter事件上文本框的名稱,但這顯示了基本前提。
顯然,您將為TextBox_Exit事件添加代碼,以確保在焦點離開TextBox后未在錯誤的文本框中輸入值。
學習在VBA IDE中編寫VBA代碼時,有助於使用代碼窗口頂部的下拉列表:
通過這兩個下拉菜單,您可以訪問userform上的所有對象及其相關事件。 超級有用且經常被忽視的工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.