Excel中鍵入時如何自動完成文本框?

      網友投稿 379 2025-03-31

      在Excel中鍵入時如何自動完成文本框?

      默認情況下,Excel可以記住您在當前工作表的單元格中輸入的內容,并在下次在新的單元格中鍵入相關的首字母時自動完成此內容。 但是,如果要使在工作表中輸入的所有內容都可以在文本框(ActiveX控件)中自動完成,該怎么辦? 本文將提供一種VBA方法,以幫助您在其中鍵入首字母時自動完成文本框。

      使用VBA代碼鍵入時自動完成文本框

      使用VBA代碼鍵入時自動完成文本框
      驚人的! 在 Excel 中使用高效的選項卡,如 Chrome、Firefox 和 Safari! 每天節省50%的時間,并減少數千次鼠標單擊!

      請執行以下操作以使文本框在文本框中鍵入首字母時自動完成。

      1.請點擊插入一個文本框 開發商 > 插頁 > 文本框(ActiveX控件)。 看截圖:

      2.然后單擊 開發商 > 插頁 > 列表框(ActiveX控件) 在當前工作表中插入一個列表框。 看截圖:

      3.右鍵單擊工作表選項卡,然后單擊 查看代碼 從上下文菜單中,如下所示。

      4.在 Microsoft Visual Basic應用程序 窗口,請將下面的VBA代碼復制并粘貼到“代碼”窗口中。 然后點擊 工具 > 參考資料,然后檢查 Microsoft腳本運行時參考– VBAProject 對話框。 看截圖:

      VBA代碼:鍵入時自動完成文本框

      Dim xRg As Range Dim xDic As New Dictionary Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) Me.TextBox1.Value = Me.ListBox1.Value End Sub Private Sub Worksheet_Change(ByVal Target As Range) Dim xVal As String On Error Resume Next If IsNumeric(Target.Value) Then xVal = Str(Target.Value) Else xVal = Target.Value End If If xVal <> "" Then If Not xDic.Exists(xVal) Then xDic.Add xVal, xVal End If End If End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Me.ListBox1.Visible = False End Sub Private Sub Worksheet_Activate() Dim I As Long Dim xStr As String On Error Resume Next If xRg Is Nothing Then Set xRg = ActiveSheet.UsedRange End If Me.ListBox1.Visible = False xDic.RemoveAll With Me.ListBox1 For I = 1 To xRg.Count xStr = xRg(I).Value If xStr <> "" Then .AddItem xStr If Not xDic.Exists(xStr) Then xDic.Add xStr, xStr End If End If Next End With End Sub Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) With Me.ListBox1 .Top = Me.TextBox1.Top .Left = Me.TextBox1.Left + Me.TextBox1.Width .Width = Me.TextBox1.Width End With TextBoxVal Me.TextBox1.Object End Sub Sub TextBoxVal(xTextBox As Variant) Dim I As Long Dim xStr As String On Error Resume Next Application.ScreenUpdating = False If xRg Is Nothing Then Exit Sub Me.ListBox1.Clear xStr = xTextBox.Value If xStr = "" Then Me.ListBox1.Visible = False Application.EnableEvents = True Exit Sub End If For I = 0 To UBound(xDic.Items) If Left(xDic.Items(I), Len(xStr)) = xStr Then Me.ListBox1.AddItem xDic.Items(I) End If Next Me.ListBox1.Visible = True If Me.ListBox1.ListCount > 0 Then With xTextBox .Value = Me.ListBox1.List(0) .SelStart = Len(xStr) .SelLength = Len(Me.ListBox1.List(0)) End With End If Me.ListBox1.Activate Me.ListBox1.Selected(0) = True Application.ScreenUpdating = True End Sub Private Sub ListBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 13 Then Me.TextBox1.Value = Me.ListBox1.Value End If End Sub

      備注:在代碼中, ListBox1文字框1 是您已插入工作表中的列表框和文本框的名稱。

      5。 按 其他 + Q 退出鍵 Microsoft Visual Basic應用程序 窗口。

      6.通過單擊關閉設計模式 開發商 > 設計模式 在工作表中。

      7.現在轉到另一個工作表,然后返回到上一個工作表以啟用VBA代碼。

      從現在開始。 在文本框中輸入首字母時,所有以您在工作表中輸入的字母開頭的文本都將列在文本框右側的列表框中。 請雙擊所需的一個,將其輸入文本框。 看截圖:

      備注:你可以使用 Up or Down 箭頭鍵在列表框中的所有自動完成文本之間移動,然后按 輸入 鍵,將所需的一個輸入文本框。

      相關文章: 在Excel中選擇文本框時如何自動選擇文本? 在Excel中單擊時如何清除文本框的內容? 如何將多個單元格的文本連接到Excel中的文本框中? 如何禁用文本框中的編輯以防止用戶在Excel中輸入? 如何在Excel中將文本框設置為百分比格式?

      最佳辦公生產力工具

      將小時轉化為分鐘 Kutools for Excel!

      準備好增強您的 Excel 任務了嗎? 利用的力量 Kutools for Excel - 您終極的節省時間的工具。 簡化復雜的任務并像專業人士一樣瀏覽數據。 以閃電般的速度體驗 Excel!

      為什么需要 Kutools for Excel

      ???  超過 300 項強大功能: Kutools 包含 300 多項高級功能,可簡化您在 1500 多種場景中的工作。

      ??  卓越的數據處理能力:合并單元格、刪除重復項并執行高級數據轉換 - 所有這些都不費吹灰之力!

      在Excel中鍵入時如何自動完成文本框?

      ??  高效的批量操作:當你可以聰明地工作時,為什么還要付出額外的努力呢? 輕松批量導入、導出、組合和調整數據。

      ??  可定制的圖表和報告:訪問各種附加圖表并生成富有洞察力的報告。

      ???  強大的導航窗格:通過強大的列管理器、工作表管理器和自定義收藏夾獲得優勢。

      ??  七種類型的下拉列表:通過各種功能和類型的下拉列表使數據輸入變得輕而易舉。

      ??  用戶友好:對于初學者來說輕而易舉,對于專家來說是一個強大的工具。

      立即下載,與 Excel 一起穿越時空!

      閱讀更多 免費下載... 采購... 
      Office Tab 為 Office 帶來選項卡式界面,讓您的工作更輕松
      在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。 在同一窗口的新選項卡中而不是在新窗口中打開并創建多個文檔。 每天將您的工作效率提高50%,并減少數百次鼠標單擊!

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:excel為什么用等于符號不出結果
      下一篇:Coolutils Total CSV Converter將CSV文件轉換成Excel的方法
      相關文章
      亚洲av成人一区二区三区| 亚洲精品美女久久久久| 国产精品亚洲精品观看不卡| 久久精品国产亚洲AV麻豆王友容| 国产亚洲老熟女视频| 久久精品国产精品亚洲艾草网美妙 | 亚洲人成色7777在线观看| 亚洲区不卡顿区在线观看| 亚洲 自拍 另类小说综合图区| 国产亚洲情侣久久精品| jzzijzzij在线观看亚洲熟妇| 亚洲AV成人片无码网站| 国产91成人精品亚洲精品| 国产综合激情在线亚洲第一页| 国产精品亚洲综合| 亚洲 无码 在线 专区| www.亚洲精品.com| 国产成人A亚洲精V品无码| 亚洲熟妇无码八AV在线播放| 久久久青草青青亚洲国产免观| 亚洲国产精品久久久天堂| 亚洲图片在线观看| 亚洲性一级理论片在线观看| 亚洲国产亚洲综合在线尤物| 99久久婷婷国产综合亚洲| 亚洲精品国产摄像头| 日韩国产精品亚洲а∨天堂免| 国产亚洲男人的天堂在线观看| 亚洲国产一区视频| 亚洲中文字幕无码永久在线| 亚洲av无码乱码国产精品| 久久久久久久亚洲Av无码 | 亚洲精品无码久久不卡| 色久悠悠婷婷综合在线亚洲| 亚洲成AV人片在线观看WWW| 亚洲视频一区在线播放| www.亚洲日本| 国产成人不卡亚洲精品91| 久久亚洲国产成人精品无码区| 亚洲国产AV无码专区亚洲AV| 亚洲视频在线免费播放|