Note: The other languages of the website are Google-translated. Back to English

Come nascondere le colonne in tempo reale in base all'input dell'utente in Excel?

Potrebbe essere un compito comune per la maggior parte di noi nascondere le colonne in Excel, ma hai mai provato a nascondere automaticamente le colonne in base ad alcuni valori di input specifici? Ad esempio, quando inserisco il testo “AA” in una cella, la colonna A è nascosta; quando inserisco “BB”, le colonne B e C sono nascoste; entrando in “CC”, le colonne D ed E sono nascoste; quando si inserisce “DD”, la colonna F viene nascosta come mostrato di seguito. Questo articolo creerà un codice VBA per risolverlo in Excel.

Nascondi o mostra le colonne in tempo reale in base all'input dell'utente con il codice VBA

Nascondi o mostra le colonne per filtrare i dati in base all'input dell'utente con il codice VBA


Nascondi o mostra le colonne in tempo reale in base all'input dell'utente con il codice VBA

Per nascondere le colonne specifiche in tempo reale in base ai valori di input, applica il codice VBA seguente:

1. Nel foglio di lavoro in cui desideri nascondere le colonne, fai clic con il pulsante destro del mouse sulla scheda del foglio, quindi fai clic su Visualizza codice dal menu contestuale, vedi screenshot

2. In aperto Microsoft Visual Basic, Applications Edition finestra, copia e incolla il seguente codice VBA nel file Foglio (Codice) finestra.

Codice VBA: nascondi le colonne in tempo reale in base all'input dell'utente

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
Note:: Nel codice sopra, K1 è la cella in cui inserisci il testo specifico e dovresti modificare i testi e i nomi delle colonne in base alle tue esigenze. Inoltre, puoi aggiungere altri nuovi criteri semplicemente aggiungendo gli script seguenti:
  • Caso "AA": Columns("A").EntireColumn.Hidden = False
  • Columns("A").EntireColumn.Hidden = True

3. Quindi, chiudi la finestra del codice. Ora, quando inserisci "AA" nella cella K1, e premi Entra chiave, la colonna A è nascosta; quando si immette “BB”, e premere Entra chiave, le colonne B e C sono nascoste e così via. Se inserisci un altro valore o elimini il contenuto, le colonne nascoste verranno visualizzate immediatamente, vedi la demo di seguito:


Nascondi o mostra le colonne per filtrare i dati in base all'input dell'utente con il codice VBA

In questo esempio, andrò a filtrare un intervallo di dati in base al nome di un prodotto inserito. Quando inserisco "Felpa", vengono visualizzate solo le informazioni sulla felpa e le altre colonne verranno nascoste contemporaneamente; e quando inserisco "Tutto", tutte le colonne verranno visualizzate come mostrato di seguito:

1. Nel foglio di lavoro in cui desideri nascondere le colonne, fai clic con il pulsante destro del mouse sulla scheda del foglio, quindi fai clic su Visualizza codice dal menu contestuale, vedi screenshot:

2. In aperto Microsoft Visual Basic, Applications Edition finestra, copia e incolla il seguente codice VBA nel file Foglio (Codice) finestra.

Codice VBA: nasconde o mostra le colonne per filtrare i dati in base all'input dell'utente

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
Note:: Nel codice sopra, K1 è la cella in cui inserisci il testo specifico, B1: H1 è le intestazioni di riga contengono il nome del prodotto che si desidera filtrare.

3. Quindi, chiudi la finestra del codice. Ora, se inserisci il nome del prodotto nella cella K1, verranno visualizzate solo le colonne corrispondenti, le altre saranno nascoste; e se inserisci il testo "Tutto", tutte le colonne appariranno come mostrato di seguito:


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office/Excel 2007-2021 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il 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!
fondo officetab
Commenti (0)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite

Seguici

Copyright © 2009 - www.extendoffice.com. | Tutti i diritti riservati. Offerto da ExtendOffice, | Mappa del sito
Microsoft e il logo Office sono marchi o marchi registrati di Microsoft Corporation negli Stati Uniti e / o in altri paesi.
Protetto da Sectigo SSL