Cum se completează automat o casetă de text când se tastează în Excel?
În mod implicit, Excel poate să-și amintească ce ați introdus în celulele foii de lucru curente și să completați automat acest conținut data viitoare când introduceți o literă inițială legată într-o nouă celulă. Cu toate acestea, dacă doriți ca întregul conținut pe care l-ați introdus în foaia de lucru să fie completat automat într-o casetă de text (Control ActiveX), cum ați putea face? Acest articol va oferi o metodă VBA pentru a vă ajuta să completați automat o casetă text atunci când introduceți o literă inițială în interior.
Completați automat o casetă text când tastați cu cod VBA
- Reutilizați orice: Adăugați cele mai utilizate sau complexe formule, diagrame și orice altceva la preferatele dvs. și reutilizați-le rapid în viitor.
- Peste 20 de caracteristici text: Extrageți numărul din șirul de text; Extrageți sau eliminați o parte din texte; Conversia numerelor și valutelor în cuvinte în limba engleză.
- Merge Tools: Mai multe cărți de lucru și foi într-unul; Combinați mai multe celule / rânduri / coloane fără a pierde date; Combinați rândurile duplicate și suma.
- Instrumente divizate: Împărțiți datele în mai multe foi bazate pe valoare; Un registru de lucru pentru mai multe fișiere Excel, PDF sau CSV; O coloană la mai multe coloane.
- Lipiți săriți Rânduri ascunse / filtrate; Număr și sumă de Culoarea fundalului; Trimiteți e-mailuri personalizate către mai mulți destinatari în bloc.
- Super Filtru: Creați scheme avansate de filtrare și aplicați oricăror foi; Sortează pe săptămână, zi, frecvență și multe altele; Filtru prin îndrăznețe, formule, comentarii ...
- Peste 300 de caracteristici puternice; Funcționează cu Office 2007-2019 și 365; Suportă toate limbile; Implementare ușoară în întreprindere sau organizație.
Completați automat o casetă text când tastați cu cod VBA

Vă rugăm să procedați după cum urmează pentru a completa completarea automată a unei cutii de text atunci când introduceți o literă inițială în interiorul casetei de text.
1. Vă rugăm să introduceți o casetă text făcând clic pe Dezvoltator > Insera > Casetă text (control ActiveX). Vedeți captura de ecran:
2. Și apoi faceți clic pe Dezvoltator > Insera > Casetă listă (control ActiveX) pentru a insera o casetă listă în foaia de lucru curentă. Vedeți captura de ecran:
3. Faceți clic dreapta pe fila foaie, apoi faceți clic pe Afișați codul din meniul contextual așa cum este prezentat mai jos.
4. În Microsoft Visual Basic pentru aplicații fereastra, vă rugăm să copiați și să lipiți mai jos codul VBA în fereastra Cod. Și apoi faceți clic pe unelte > Referinte, și apoi verificați Runtime Microsoft Scripting cutie în Referințe - VBAProject căsuță de dialog. Vedeți captura de ecran:
Cod VBA: Completați automat o casetă de text când tastați
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
notițe: În cod, ListBox1 Textbox1 sunt numele casetei de listă și textului pe care le-ați inserat în foaia de lucru.
5. apasă pe Alt + Q tastele pentru a ieși din Microsoft Visual Basic pentru aplicații fereastră.
6. Dezactivați modul Design făcând clic pe Dezvoltator > Mod de proiectare în foaia de lucru.
7. Acum treceți la o altă foaie de lucru și apoi reveniți la foaia de lucru anterioară pentru a activa codul VBA.
De-acum inainte. Când introduceți o literă inițială în caseta de text, toate textele care încep cu acea literă pe care ați introdus-o în foaia de lucru vor fi listate în caseta de listă care se află în partea dreaptă a casetei de text. Vă rugăm să faceți dublu clic pe cel necesar pentru al introduce în caseta de text. Vedeți captura de ecran:
notițe: Puteți folosi funcția Up or Jos tasta săgeată pentru a vă deplasa printre toate textele de completare automată din caseta de listă, apoi apăsați tasta Introduce tasta pentru a introduce cea necesară în caseta de text.
Legate de articole:
- Cum se selectează automat textul unei casete de text când este selectat în Excel?
- Cum se șterge conținutul casetei de text atunci când se face clic în Excel?
- Cum se concatenează textele mai multor celule într-o casetă text în Excel?
- Cum se dezactivează editarea în caseta de text pentru a preveni introducerea de utilizatori în Excel?
- Cum să formatați o casetă text ca procent în Excel?
Cele mai bune instrumente de productivitate Office
Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%
- reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
- Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
- Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
- Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
- Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
- Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
- Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
- Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
- Peste 300 de funcții puternice. Suportă Office / Excel 2007-2019 și 365. Suportă toate limbile. Implementare ușoară în întreprindere sau organizație. Funcții complete de încercare gratuită de 30 de zile. Garanție de restituire a banilor de 60 de zile.

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse în fiecare zi!
