Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Cercare un valore in una matrice

Ultimo Aggiornamento: 01/11/2017 09:45
Post: 1
Registrato il: 31/10/2017
Città: BRUGNERA
Età: 29
Utente Junior
2016
OFFLINE
31/10/2017 12:08

Buongiorno a tutti,

sono nuovo del forum.
Avrei bisogno di sapere se excel permette di cercare un valore in una matrice.
Per ora le funzioni usate hanno dato tutte esito negativo.
Per la precisione, devo cercare il valore in una matrice e ottenere l'indirizzo della cella da cui poi andrò a ricavarmi il numero della colonna.

Grazie a tutti
Post: 3.534
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
31/10/2017 12:11

Ciao Andrea

Certo che lo permette ma tu non dici quali funzioni hai usato.

Allega un file di esempio con i dati (specifica le funzioni che hai usato) ed inserisci a mano il risultato desiderato.

Alfredo
Post: 3.977
Registrato il: 13/03/2012
Città: LIVORNO
Età: 78
Utente Master
2010
OFFLINE
31/10/2017 15:33

bisognerebbe anche sapere cosa intendi per matrice, un range di celle ? una matrice in senso matematico ?

----------
Win 10 - Excel 2010
allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
Post: 1
Registrato il: 31/10/2017
Città: BRUGNERA
Età: 29
Utente Junior
2016
OFFLINE
31/10/2017 15:44

Salve,

per matrice intendo un range di celle (tipo A5:D300) e ho solo bisogno di sapere come ottenere l'indirizzo della cella in cui si trova un ipotetico valore cercato nel range tutto qua.

Ho provato con CERCA() e CONFRONTA() ma nulla.

Grazie in anticipo
Post: 3.536
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
31/10/2017 15:50

Non sono espero di formule quindi ti propongo una soluzione col VBA che utilizza il metodo Find.
Supponendo che il valore da cercare sia in A1 lanciando questa macro ti apparirà un MsgBox con l'indirizzo della cella cercata


vb
Sub TrovaIndirizzo"
Dim rng as range
With Sheets("Foglio1").Range("A5:D300")
            Set Rng = .Find(What:=Range("a1").Value, _
                            After:=.Cells(.Cells.Count), _
                            LookIn:=xlValues, _
                            LookAt:=xlWhole, _
                            SearchOrder:=xlByRows, _
                            SearchDirection:=xlNext, _
                            MatchCase:=False)
            If Not Rng Is Nothing Then
                MsgBox rng.Address
            Else
                MsgBox "Valore non trovato"
            End If
        End With
End Sub


Stessa cosa si può fare con una Function che restituisca l'indirizzo cercato.

Ma se alleghi un file è meglio.
[Modificato da alfrimpa 31/10/2017 16:07]

Alfredo
Post: 144
Registrato il: 15/01/2016
Città: ROMA
Età: 51
Utente Junior
2016
OFFLINE
01/11/2017 09:45

Buongiorno il range A5:D300 è dove andiamo a cercare l'indirizzo di un valore noto presente nel range questo valore di ricerca l'ho messo in I1 quindi nella cella di output io ho messo I2

=INDIRIZZO(MATR.SOMMA.PRODOTTO(($A$5:$D$300=$I$1)*RIF.RIGA($A$5:$D$300));MATR.SOMMA.PRODOTTO(($A$5:$D$300=$I$1)*RIF.COLONNA($A$5:$D$300)))
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 04:27. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com