KutoolsforOffice — Un'unica soluzione, cinque potenti strumenti.Ottenere di più con meno sforzo.

Come trovare il primo valore diverso da zero e restituire l’intestazione della colonna corrispondente in Excel?

AutoreXiaoyang Data di modifica

Quando si lavora con dati in Excel, capita spesso di dover individuare la posizione del primo valore diverso da zero all’interno di una riga e visualizzare l’intestazione di colonna corrispondente. Ad esempio, in un set di dati in cui ogni riga rappresenta un elemento o una persona diversa e le colonne indicano periodi temporali o categorie, può essere molto utile sapere in quale momento compare per la prima volta un valore significativo in ciascuna riga. Controllare manualmente ogni riga alla ricerca del primo valore non nullo è un’operazione lunga e noiosa, soprattutto quando i dati diventano voluminosi. Automatizzare questa ricerca non solo accelera il lavoro, ma riduce anche il rischio di errori, rendendo le analisi più precise e affidabili. Questo articolo presenta diversi metodi pratici per raggiungere l’obiettivo: dalle formule versatili di Excel alle macro VBA, ideali per gestire dataset di grandi dimensioni o report ricorrenti.

trova il primo valore diverso da zero e restituisci l'intestazione di colonna corrispondente


freccia blu con fumetto a destra Trova il primo valore diverso da zero e restituisci l'intestazione di colonna corrispondente con una formula

Per identificare in modo rapido ed efficiente l’intestazione di colonna corrispondente al primo valore diverso da zero in una determinata riga, puoi sfruttare una formula integrata di Excel. Questo metodo si rivela ideale per set di dati di piccole o medie dimensioni, dove contano il ricalcolo in tempo reale e la semplicità di configurazione.

1. Seleziona una cella vuota in cui visualizzare il risultato; in questo esempio viene utilizzata la cella K2.

=INDEX($B$1:$I$1,MATCH(TRUE,INDEX(B2:I2<>0,),0))

2. Dopo aver inserito la formula, premere Invio per confermare. Successivamente, selezionare K2 e trascinare la formula verso il basso utilizzando il quadratino di riempimento per applicarla alle righe successive, secondo necessità.

utilizza una formula per trovare il primo valore diverso da zero e restituire l'intestazione di colonna corrispondente

Nota: Nella formula indicata sopra, B1:I1 rappresenta l’intervallo delle intestazioni di colonna che si desidera restituire, mentre B2:I2 è la riga di dati analizzata per individuare il primo valore diverso da zero.

Se i dati iniziano in colonne o righe diverse, ricordati di adeguare di conseguenza gli intervalli nella formula. Inoltre, questa formula funziona correttamente purché vi sia almeno un valore diverso da zero in ciascuna riga analizzata; se tutti i valori sono zero, la formula restituirà un errore. In questi casi, ti consigliamo di racchiudere la formula in SE.ERROREcome segue:=IFERROR(INDEX($B$1:$I$1,MATCH(TRUE,INDEX(B2:I2<>0,),0)),"No non-zero")per visualizzare un messaggio personalizzato anziché un errore.

Questa soluzione basata su formule è ideale per ottenere risultati dinamici che si aggiornano istantaneamente non appena i dati di input cambiano. Tuttavia, con set di dati estremamente grandi, le prestazioni potrebbero risentirne: in questi casi, un approccio VBA può rivelarsi preferibile per ottimizzare l’automazione del flusso di lavoro e ridurre al minimo le operazioni manuali.

freccia blu con fumetto a destra Utilizza una macro VBA per trovare e restituire l'intestazione di colonna del primo valore diverso da zero in ogni riga

Se devi eseguire spesso questa ricerca su numerose righe o su set di dati di grandi dimensioni, oppure se desideri automatizzare il processo per migliorare l’efficienza, l’utilizzo di una macro VBA rappresenta un’alternativa pratica. Questo approccio è particolarmente vantaggioso per la generazione periodica di report o quando lavori con tabelle i cui dati variano frequentemente nelle dimensioni. La macro analizzerà ogni riga specificata, individuerà il primo valore diverso da zero e restituirà l’intestazione di colonna corrispondente in una cella di destinazione.

1. Fare clic sulla scheda Sviluppo > Visual Basic per aprire la finestra di Microsoft Visual Basic, Applications. (Se la scheda Sviluppo non è visibile, puoi aggiungerla tramite)File > Opzioni > Personalizza Barra multifunzione.) Nell'editor VBA, fai clic su Inserisci > Modulo.

2.Copiare e incollare il seguente codice VBA nel nuovo modulo:

Sub LookupFirstNonZeroAndReturnHeader()
    Dim ws As Worksheet
    Dim dataRange As Range
    Dim headerRange As Range
    Dim outputCell As Range
    Dim r As Range
    Dim c As Range
    Dim firstNonZeroCol As Integer
    Dim i As Long
    Dim xTitleId As String
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    Set ws = Application.ActiveSheet
    Set dataRange = Application.InputBox("Select the data range (excluding headers):", xTitleId, Selection.Address, Type:=8)
    If dataRange Is Nothing Then Exit Sub
    Set headerRange = ws.Range(dataRange.Offset(-1, 0).Resize(1, dataRange.Columns.Count).Address)
    For i = 1 To dataRange.Rows.Count
        Set r = dataRange.Rows(i)
        firstNonZeroCol = 0
        
        For Each c In r.Columns
            If c.Value <> 0 And c.Value <> "" Then
                firstNonZeroCol = c.Column - dataRange.Columns(1).Column + 1
                Exit For
            End If
        Next c
        
        Set outputCell = r.Cells(1, r.Columns.Count + 1)
        
        If firstNonZeroCol > 0 Then
            outputCell.Value = headerRange.Cells(1, firstNonZeroCol).Value
        Else
            outputCell.Value = "No non-zero"
        End If
    Next i
    
    On Error GoTo 0
    MsgBox "Completed! Results are in the column to the right of your data.", vbInformation, "KutoolsforExcel"
End Sub

3. Per eseguire la macro, fai clic sul pulsante Esegui o premi il tasto F5. Verrà visualizzata una finestra di dialogo che ti chiederà di selezionare l’intervallo dati (escludendo le intestazioni di colonna). Al termine dell’esecuzione della macro, la colonna immediatamente a destra dei dati selezionati verrà compilata con l’intestazione corrispondente al primo valore diverso da zero per ciascuna riga oppure con il messaggio «Nessun valore diverso da zero», se non ne vengono trovati.

Questo approccio VBA è particolarmente efficace per attività ripetitive ed eccellente per gestire set di dati di grandi dimensioni, riducendo lo sforzo manuale. Assicurarsi tuttavia che le macro siano abilitate nell'ambiente Excel e creare sempre un backup della cartella di lavoro prima di eseguire codice.

Nota: In caso di errori, assicurati che la selezione escluda la riga delle intestazioni e includa solo le righe di dati.

uno screenshot di kutools for excel ai

Sblocca la magia di Excel con KUTOOLS AI

  • Esecuzione intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici, il tutto con comandi semplici e intuitivi.
  • Formule personalizzate: crea formule su misura per ottimizzare i tuoi flussi di lavoro.
  • Codifica VBA: Scrivi e implementa codice VBA in modo semplice e immediato.
  • Interpretazione delle formule: Comprendi con facilità anche le formule più complesse.
  • Traduzione del testo: Superate le barriere linguistiche direttamente nei vostri fogli di calcolo.
Potenzia le tue capacità in Excel con strumenti basati sull’intelligenza artificiale.Scarica orae scopri un’efficienza mai provata prima!

Migliori Strumenti per la Produttività in Office

🤖KUTOOLS AI Assistente: Rivoluziona Analisi dei dati in base a:Esecuzione Intelligente   |  Genera Codice|  Crea formule personalizzate  |  Analizza Dati e Genera Grafici|  Richiama Funzioni avanzate
Funzionalità Popolari:Trova, Evidenzia o Contrassegna Duplicati   |  Elimina righe vuote   |  Combinare Colonne o Celle senza Perdere Dati   |   Arrotondamento senza usare la formula...
Super RICERCA.VERT:VLookup con Criteri Multipli  |  VLookup con Valori Multipli  |   VLookup tra Fogli Multipli   |   Corrispondenza approssimativa....
Elenco a discesa avanzato:Crea Rapidamente un Elenco a Discesa   |  Elenco a Discesa Dipendente   |  Elenco a Discesa con Selezione Multipla....
Gestione Colonne:Aggiungi un Numero Specifico di Colonne|Sposta Colonne|Attiva/Disattiva lo Stato di Visibilità delle Colonne Nascoste|Confronta Intervalli e Colonne...
Funzionalità in Evidenza:Attenzione della griglia   |  Visualizzazione Design   |Barra delle formule avanzata   | Gestione Cartelle di Lavoro e Fogli   |  Biblioteca di risorse(Testo Automatico)|  Selettore di Date   |  Unisci fogli di lavoro  |  Crittografa/Decrittografa celle   | Invia Email da Lista   |  Super Filtri   |   Filtro speciale(Filtra celle con testo in grassetto/corsivo/barrato...) ...
Principali Set di Strumenti 15:12 Strumentiper il Testo(Aggiungi testo,Elimina Caratteri Specifici, ...)|   50+Tipidi Grafico(Diagramma di Gantt, ...)|   40+ Formule Pratiche(Calcola l'età in base alla data di nascita, ...)|   19 Strumentidi Inserimento(Inserisci Codice QR,Inserisci Immagine dal Percorso, ...)|   12 Strumentidi Conversione(Converti in parole,Conversione del tasso di cambio, ...)|   7 StrumentiUnisci e Dividi(Unione avanzata righe,Dividi celle, ...)|... e molto altro
Usa Kutools nella tua lingua preferita – supporta inglese, spagnolo, tedesco, francese, cinese e 40+ altre!

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...


Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice

  • 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 all’interno della stessa finestra, invece che in finestre separate.
  • Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!

Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.

Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.

ExcelWordOutlookTabsPowerPoint
  • Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
  • Funziona meglio insieme— produttività ottimizzata tra le app di Office
  • Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
  • Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi