Μετάβαση στο κύριο περιεχόμενο

Πώς να αποθηκεύσετε ή να διατηρήσετε τις επιλογές των πλαισίων λίστας ActiveX στο Excel;

Ας υποθέσουμε ότι έχετε δημιουργήσει ορισμένα πλαίσια λίστας και έχετε κάνει επιλογές στα πλαίσια λίστας, ωστόσο, όλες οι επιλογές αυτών των κουτιών λίστας εξαφανίζονται όταν κλείνουν και ανοίγουν ξανά το βιβλίο εργασίας. Θέλετε να διατηρήσετε τις επιλογές που γίνονται σε πλαίσια λίστας κάθε φορά που κλείνετε και ανοίγετε ξανά το βιβλίο εργασίας; Η μέθοδος σε αυτό το άρθρο μπορεί να σας βοηθήσει.

Αποθηκεύστε ή διατηρήστε τις επιλογές των πλαισίων λίστας ActiveX με κώδικα VBA στο Excel


Εισαγάγετε ή διαγράψτε εύκολα πολλά πλαίσια ελέγχου μαζικά στο Excel:

Η Μαζική εισαγωγή κουτιών ελέγχου βοηθητικά προγράμματα της Kutools για Excel μπορεί να σας βοηθήσει να εισαγάγετε γρήγορα πολλά πλαίσια ελέγχου σε επιλεγμένο εύρος ταυτόχρονα. Και μπορείτε να διαγράψετε όλα τα πλαίσια ελέγχου σε επιλεγμένο εύρος με το Μαζική διαγραφή κουτιών ελέγχου. Δείτε το στιγμιότυπο οθόνης:

Kutools για Excel: με περισσότερα από 200 εύχρηστα πρόσθετα του Excel, δωρεάν δοκιμή χωρίς περιορισμό σε 60 ημέρες. Λήψη και δωρεάν δοκιμή τώρα!


Αποθηκεύστε ή διατηρήστε τις επιλογές των πλαισίων λίστας ActiveX με κώδικα VBA στο Excel

Ο παρακάτω κώδικας VBA μπορεί να σας βοηθήσει να αποθηκεύσετε ή να διατηρήσετε επιλογές εάν τα πλαίσια λίστας ActiveX στο Excel. Κάντε τα εξής:

1. Στο βιβλίο εργασίας περιέχει τα πλαίσια λίστας ActiveX που θέλετε να διατηρήσετε τις επιλογές, πατήστε το άλλος + F11 ταυτόχρονα για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Στο Microsoft Visual Basic για εφαρμογές παράθυρο, κάντε διπλό κλικ Αυτό το βιβλίο εργασίας στο αριστερό παράθυρο για να ανοίξετε το Αυτό το βιβλίο εργασίας Κώδικας παράθυρο. Και, στη συνέχεια, αντιγράψτε τον ακόλουθο κώδικα VBA στο παράθυρο κώδικα.

Κωδικός VBA: Αποθήκευση επιλογών των πλαισίων λίστας ActiveX στο Excel

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. Πάτα το άλλος + Q πλήκτρα για να κλείσετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

4. Τώρα πρέπει να αποθηκεύσετε το βιβλίο εργασίας ως βιβλίο εργασίας με δυνατότητα μακροεντολής Excel. Παρακαλώ πατήστε Αρχεία > Αποθήκευση ως > Αναζήτηση.

5. Στο Αποθήκευση ως παράθυρο διαλόγου, επιλέξτε ένα φάκελο για να αποθηκεύσετε το βιβλίο εργασίας, μετονομάστε το όπως χρειάζεστε, επιλέξτε Βιβλίο εργασίας Excel με δυνατότητα μακροεντολής στο Αποθήκευση ως τύπου αναπτυσσόμενη λίστα και, τέλος, κάντε κλικ στο Αποθήκευση κουμπί. Δείτε το στιγμιότυπο οθόνης:

Αποθηκεύστε το βιβλίο εργασίας κάθε φορά όταν ενημερώνετε τα πλαίσια λίστας. Στη συνέχεια, όλες οι προηγούμενες επιλογές θα διατηρηθούν στα πλαίσια λίστας μετά το άνοιγμα του βιβλίου εργασίας ξανά.

Note: Κατά την αποθήκευση του βιβλίου εργασίας, ένα φύλλο εργασίας με το όνομα "Δεδομένα ListBox" θα δημιουργηθεί αυτόματα στο τέλος όλων των φύλλων εργασίας του βιβλίου εργασίας σας, αγνοήστε αυτό το φύλλο εργασίας γιατί θα εξαφανιστεί αυτόματα όταν κλείσει το βιβλίο εργασίας.

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

kte καρτέλα 201905


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi - Is there any way to prevent the "ListBox Data" tab from opening when you save the file? We're trying to send this to users but every time I save it opens the ListBox Data tab and then I can't save it with the primary tab open - which is confusing for users.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations