Hogyan mentheti vagy megtarthatja az ActiveX-listák kiválasztását az Excelben?
Tegyük fel, hogy létrehozott néhány listamezőt és kiválasztott a listamezőkben, azonban a munkafüzet bezárásakor és újbóli megnyitásakor ezeknek a listamezőknek az összes kijelölése eltűnik. Meg akarja őrizni a listamezőkben elvégzett kijelöléseket, amikor bezárja és újra megnyitja a munkafüzetet? A cikkben szereplő módszer segíthet.
Mentse vagy megtartsa az ActiveX-listamezők VBA kóddal történő kiválasztását az Excelben
Könnyen beilleszthet vagy törölhet több jelölőnégyzetet tömegesen az Excelben:
A Batch Insert jelölőnégyzetek segédprogramjai Kutools az Excel számára segítségével gyorsan bejelölhet több jelölőnégyzetet a kiválasztott tartományba egyszerre. És törölheti az összes jelölőnégyzetet a kiválasztott tartományból a Kötegelt törlés jelölőnégyzetek. Lásd a képernyőképet:
Kutools az Excel számára: több mint 200 praktikus Excel-bővítménnyel, ingyenesen, korlátozás nélkül, 60 nap alatt kipróbálható. Töltse le és ingyenes próbaverziót most!
Mentse vagy megtartsa az ActiveX-listamezők VBA kóddal történő kiválasztását az Excelben
Az alábbi VBA-kód segíthet a választások mentésében vagy megtartásában, ha az ActiveX listázza az Excel programot. Kérjük, tegye a következőket.
1. A munkafüzetben találhatók az ActiveX listamezők, amelyek meg kívánják őrizni a kijelöléseket, nyomja meg a gombot más + F11 gombok egyszerre a Microsoft Visual Basic for Applications ablak.
2. Ban,-ben Microsoft Visual Basic for Applications ablakban kattintson duplán Ez a munkafüzet a bal oldali ablaktáblán a Ez a munkafüzet Kód ablak. Ezután másolja a következő VBA kódot a kódablakba.
VBA-kód: Az ActiveX-listák kiválasztásának mentése az Excelbe
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim I As Long
Dim J As Long
Dim K As Long
Dim KK As Long
Dim xSheet As Worksheet
Dim xListBox As Object
On Error GoTo Label
Application.DisplayAlerts = False
Application.ScreenUpdating = False
K = 0
KK = 0
If Not Sheets("ListBox Data") Is Nothing Then
Sheets("ListBox Data").Delete
End If
Label:
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "ListBox Data"
Set xSheet = Sheets("ListBox Data")
For I = 1 To Sheets.Count
For Each xListBox In Sheets(I).OLEObjects
If xListBox.Name Like "ListBox*" Then
With xListBox.Object
For J = 0 To .ListCount - 1
If .Selected(J) Then
xSheet.Range("A1").Offset(K, KK).Value = "True"
Else
xSheet.Range("A1").Offset(K, KK).Value = "False"
End If
K = K + 1
Next
End With
K = 0
KK = KK + 1
End If
Next
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Private Sub Workbook_Open()
Dim I As Long
Dim J As Long
Dim KK As Long
Dim xRg As Range
Dim xCell As Range
Dim xListBox As Object
Application.DisplayAlerts = False
Application.ScreenUpdating = False
KK = 0
For I = 1 To Sheets.Count - 1
For Each xListBox In Sheets(I).OLEObjects
If xListBox.Name Like "ListBox*" Then
With xListBox.Object
Set xRg = Intersect(Sheets("ListBox Data").Range("A1").Offset(0, KK).EntireColumn, Sheets("ListBox Data").UsedRange)
For J = 1 To .ListCount
Set xCell = xRg(J)
If xCell.Value = "True" Then
.Selected(J - 1) = True
End If
Next
KK = KK + 1
End With
End If
Next
Next
Sheets("ListBox Data").Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
3. megnyomni a más + Q gombok a Microsoft Visual Basic for Applications ablak.
4. Most el kell mentenie a munkafüzetet Excel Macro-kompatibilis munkafüzetként. kérem kattintson filé > Mentés másként > Tallózás.
5. Ban,-ben Mentés másként párbeszédpanelen válasszon egy mappát a munkafüzet mentéséhez, nevezze át szükség szerint, válassza a lehetőséget Excel makró-engedélyezett munkafüzet a Mentés típus legördülő listából, és végül kattintson a gombra Megtakarítás gomb. Lásd a képernyőképet:
Kérjük, mentse el a munkafüzetet a listadobozok frissítésekor. Ezután az összes korábbi kijelölés a munkafüzet újbóli megnyitása után a listamezőkben marad.
Megjegyzések: A munkafüzet mentésekor a „ListBox adatok”Automatikusan létrejön a munkafüzet összes munkalapjának végén, kérjük, hagyja figyelmen kívül ezt a munkalapot, mert a munkafüzet bezárásakor automatikusan eltűnik.
A legjobb irodai hatékonyságnövelő eszközök
Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz. Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...
Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját
- Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
- Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
- 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!