La funzione HASANY consente di verificare se una matrice o un intervallo contiene almeno uno dei valori desiderati. Restituisce VERO se viene trovato uno qualsiasi dei valori e FALSO se nessuno di essi lo è.
HASANY cerca in ogni livello di un array annidato, in modo da poterlo utilizzare su array archiviati all'interno di una singola cella.
Sintassi
La funzione HASANY determina se la matrice contiene uno dei valori.
La sintassi della funzione HASANY è:
HASANY(matrice, valori)
| Argomento | Descrizione |
|---|---|
| matrice (obbligatorio) |
La matrice o l'intervallo in cui eseguire la ricerca. Viene cercato ogni livello di una matrice annidata. |
|
Valori (obbligatorio) |
Valori da controllare. HASANY restituisce TRUE se ne viene trovato uno. |
Nota
- HASANY restituisce sempre un singolo VERO o FALSO, indipendentemente dal numero di valori cercati. Per ottenere un risultato per ogni valore, usare invece la funzione HA. Per richiedere che tutti i valori siano presenti, usare la funzione HASALL.
- I confronti sono rigorosi per quanto riguarda il tipo. Il numero 1 non corrisponde al testo "1" e il numero 1 non corrisponde a VERO. I confronti di testo non fanno distinzione tra maiuscole e minuscole, quindi "mela" corrisponde a "mela".
- Se matrice è vuota, HASANY restituisce l'errore #CALC! .
- Se valori contiene un errore, viene restituito tale errore.
Esempi
Copiare i dati di esempio e incollarli nella cella A1 di un nuovo foglio di lavoro di Excel. Se necessario, è possibile regolare la larghezza delle colonne per visualizzare tutti i dati.
Esempio 1
Verificare se un intervallo contiene almeno uno dei valori seguenti.
| Dati | ||||
|---|---|---|---|---|
| 10 | 20 | 30 | 40 | 50 |
| Formule | Domande |
|---|---|
| =HASANY(A2:E2;{20,99}) | C'è 20 o 99 nell'elenco? |
| =HASANY(A2:E2;{7,8,9}) | C'è 7, 8 o 9 nell'elenco? |
| =HASANY(A2:E2;30) | C'è 30 nell'elenco? |
La figura seguente mostra i risultati.
Esempio 2
Eseguire ricerche all'interno di una matrice annidata. La formula ={{{1,2};{3,4}}} nella cella A1 archivia una matrice annidata in una singola cella.
| Formule | Descrizione |
|---|---|
| =HASANY(A1;{2,5}) | restituisce VERO. HASANY cerca in ogni livello, quindi 2 si trova all'interno {1,2} |
| =HASANY(A1;{5,6}) | restituisce FALSO. Nessuno dei due valori compare ad alcun livello |
La figura seguente mostra i risultati.
Esempio 3
Controllare un elenco di tag. Ogni cella della colonna B contiene un elenco di tag, visualizzati separati da virgole.
Dopo aver incollato i dati, selezionare B2:B4 e premere CTRL+J per trasformare ogni cella in un elenco. Fino a quando non verrà eseguita questa operazione, ogni cella conterrà una singola porzione di testo e le formule seguenti non troveranno i singoli tag.
| Articolo | Tag |
|---|---|
| Prodotto A | urgente, revisione, T1 |
| Prodotto B | spedito, Q2 |
| Prodotto C | urgente, T2 |
| Formule | Descrizione |
|---|---|
| =HASANY(B2;{"urgente";"bloccato"}) | restituisce VERO. Il prodotto A è contrassegnato come urgente |
| =HASANY(B3;{"urgente";"bloccato"}) | restituisce FALSO. Il prodotto B non ha nessuna delle due etichette |
| =HASANY(B2:B4;"spedito") | restituisce VERO. La ricerca in tutte e tre le celle viene eseguita come un'unica raccolta |
Nota
L'ultima formula esegue la ricerca in tutto l'intervallo contemporaneamente, perché la matrice è una singola raccolta e non un elenco di elementi da testare uno alla volta. Per ottenere una risposta distinta per ogni riga, immettere la formula in una cella e compilarla nella colonna.
La figura seguente mostra i risultati.