Mike, come contabile, ha la necessità di nascondere le righe in un foglio di lavoro in base ai valori in due celle nella riga. Le sue tabelle di dati hanno tre colonne e se una riga contiene uno zero nelle colonne due e tre, la riga dovrebbe essere nascosta. Se la colonna due o tre è vuota o contiene un altro valore, la riga non deve essere nascosta.

Ci sono un paio di modi per affrontare questo problema. Il primo è utilizzare il filtro automatico di Excel. Basta creare un’altra colonna che contenga una formula come questa:

=AND(B2=0,C2=0)

Il valore restituito dalla formula sarà True solo se sia la seconda (B) che la terza © colonna contengono un valore zero. Copia la formula nelle altre celle appropriate nella colonna e puoi quindi utilizzare un filtro automatico per filtrare i dati in base a quella colonna. Quando visualizzi solo quelle righe contenenti un Falso nella colonna, hai effettivamente nascosto le righe in cui è presente un valore zero nelle colonne due e tre.

Puoi anche utilizzare una macro per controllare le righe per te. La seguente macro passa attraverso ogni riga del foglio di lavoro, iniziando dalla riga 1. Finché c’è qualcosa nella colonna A, la macro verifica che ci sia un valore zero nelle colonne B e C. Se c’è, allora la proprietà .Hidden per la riga è impostata.

Sub Hide()

Dim Criteria as Boolean     Dim i As Integer

i = 1     Do Until Trim(Cells(i, 1).Value) = ""          Criteria = True         Criteria = Criteria And (Cells(i, 2).Value = 0) _           And Cells(i, 2).Value <> ""

Criteria = Criteria And (Cells(i, 3).Value = 0) _           And Cells(i, 3).Value <> ""          If Criteria Then Rows(i).EntireRow.Hidden = True         i = i + 1      Loop  End Sub

La macro viene eseguita finché non incontra una riga in cui non è presente nulla nella colonna A. Ciò significa che è necessario assicurarsi che sia effettivamente presente qualcosa nelle righe prima della tabella dei dati. Se la tabella dei dati inizia nella riga 4 del foglio di lavoro e le celle da A1 a A3 non contengono nulla, la macro non verrà mai eseguita in modo soddisfacente. Ovviamente puoi regolare la macro in questa situazione in modo che inizi a controllare nella riga 4; cambia semplicemente l’assegnazione iniziale della variabile i a 4 invece di 1.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (2416) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: