Vai al contenuto principale

Come salvare o conservare le selezioni delle caselle di riepilogo ActiveX in Excel?

Supponendo di aver creato alcune caselle di riepilogo e di aver effettuato selezioni nelle caselle di riepilogo, tuttavia, tutte le selezioni di queste caselle di riepilogo scompaiono quando si chiude e si riapre la cartella di lavoro. Si desidera mantenere le selezioni effettuate nelle caselle di riepilogo ogni volta che si chiude e si riapre la cartella di lavoro? Il metodo in questo articolo può aiutarti.

Salva o conserva le selezioni delle caselle di riepilogo ActiveX con codice VBA in Excel


Inserisci o elimina facilmente più caselle di controllo in blocco in Excel:

I Caselle di controllo inserimento batch utilità di Kutools for Excel può aiutarti a inserire rapidamente più caselle di controllo nell'intervallo selezionato contemporaneamente. Ed è possibile eliminare tutte le caselle di controllo nell'intervallo selezionato con il Caselle di controllo Elimina batch. Vedi sccreenshot:

Kutools for Excel: con più di 200 utili componenti aggiuntivi di Excel, liberi di provare senza limitazioni in 60 giorni. Scarica e prova gratuita ora!


Salva o conserva le selezioni delle caselle di riepilogo ActiveX con codice VBA in Excel

Il codice VBA sottostante può aiutarti a salvare o mantenere le selezioni se le caselle di riepilogo ActiveX in Excel. Si prega di fare quanto segue.

1. Nella cartella di lavoro contiene le caselle di riepilogo ActiveX di cui si desidera mantenere le selezioni, premere il tasto altro + F11 tasti contemporaneamente per aprire il file Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare doppio clic Questa cartella di lavoro nel riquadro di sinistra per aprire il file Questa cartella di lavoro Code finestra. Quindi copia il seguente codice VBA nella finestra del codice.

Codice VBA: salva le selezioni delle caselle di riepilogo ActiveX in 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. premi il altro + Q i tasti per chiudere il file Microsoft Visual Basic, Applications Edition finestra.

4. Ora è necessario salvare la cartella di lavoro come cartella di lavoro abilitata per le macro di Excel. Fare clic su Compila il > Salva con nome > Scopri la nostra gamma di prodotti.

5. Nel Salva con nome finestra di dialogo, seleziona una cartella per salvare la cartella di lavoro, rinominala come ti serve, seleziona Cartella di lavoro abilitata per Excel nel Salva come tipo elenco a discesa e infine fare clic su Risparmi pulsante. Vedi screenshot:

Salvare la cartella di lavoro ogni volta che si aggiornano le caselle di riepilogo. Quindi tutte le selezioni precedenti verranno mantenute nelle caselle di riepilogo dopo la riapertura della cartella di lavoro.

Note:: Quando si salva la cartella di lavoro, un foglio di lavoro denominato "Dati ListBox"Verrà creato automaticamente alla fine di tutti i fogli di lavoro della cartella di lavoro, ignorare questo foglio di lavoro perché scomparirà automaticamente alla chiusura della cartella di lavoro.

I migliori strumenti per la produttività in ufficio

🤖 Assistente AI di Kutools: Rivoluziona l'analisi dei dati basandosi su: Esecuzione intelligente   |  Genera codice  |  Crea formule personalizzate  |  Analizzare i dati e generare grafici  |  Richiama le funzioni di Kutools...
Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Strumenti (aggiungi testo, Rimuovi personaggi, ...)   |   50+ Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Strumenti (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Strumenti (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Strumenti (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...

Descrizione


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!
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