La funzione HAS consente di verificare se un valore esiste in un punto qualsiasi di una matrice o di un intervallo. Restituisce VERO se il valore viene trovato e FALSO in caso contrario.
HAS esegue la ricerca a tutti i livelli di una matrice annidata, quindi è possibile usarlo su matrici archiviate all'interno di una singola cella.
Sintassi
La funzione HAS determina se il valore esiste nella matrice.
La sintassi della funzione HAS è:
HAS(matrice, valore)
| Argomento | Descrizione |
|---|---|
| matrice (obbligatorio) |
La matrice o l'intervallo in cui eseguire la ricerca. Viene cercato ogni livello di una matrice annidata. |
|
valore (obbligatorio) |
Valore o matrice di valori da cercare. |
Nota
- 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. Se è necessario eseguire il confronto tra più tipi, convertire prima il valore, ad esempio con la funzione VALORE.
- I confronti di testo non fanno distinzione tra maiuscole e minuscole, quindi "mela" corrisponde a "mela".
- Quando valore è una matrice, HAS restituisce una matrice di risultati VERO e FALSO con la stessa forma di valore. Ogni valore viene testato separatamente.
- Se la matrice è vuota, HAS restituisce l'errore #CALC! .
- Se il valore contiene un errore, viene restituito tale errore.
- Per verificare la presenza di più valori contemporaneamente con un'unica risposta VERO o FALSO, usare HASANY o HASALL.
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 valori specifici.
| Dati | ||||
|---|---|---|---|---|
| 10 | 20 | 30 | 40 | 50 |
| Formule | Domande |
|---|---|
| =HAS(A2:E2;30) | C'è 30 nell'elenco? |
| =HAS(A2:E2;99) | Il 99 è nella lista? |
La figura seguente mostra i risultati.
Esempio 2
Verificare la presenza di più valori contemporaneamente. Poiché il secondo argomento è una matrice, HAS restituisce un risultato per ogni valore, nella stessa forma dei valori cercati.
| Dati | ||
|---|---|---|
| 1 | 2 | 3 |
Lasciare due celle vuote sotto la seconda formula, in modo che i risultati possano essere espansi.
| Formule | Descrizione |
|---|---|
| =HAS(A2:C2;{{2,5}}) | Restituisce una singola cella contenente la matrice annidata {VERO,FALSO} |
| =HAS(A2:C2;{2; 5; 3}) | restituisce VERO, FALSO, VERO espandendo tre celle, un risultato per ogni valore |
La figura seguente mostra i risultati.
Esempio 3
Eseguire ricerche all'interno di una matrice annidata. Copiare l'intera tabella e incollarla nella cella A1 di un nuovo foglio di lavoro. La formula in A2 archivia una matrice annidata in una singola cella.
| Dati | |
|---|---|
| ={{{1,2};{3,4}}} | |
| Formule | Descrizione |
| =HAS(A2;3) | restituisce VERO. HAS cerca in ogni livello, quindi all'interno si trova il 3 {3,4} |
| =HAS(A2,5) | restituisce FALSO. Nessun livello dell'array annidato contiene 5 |
La figura seguente mostra i risultati.