Ciao Banjer71,
vorrei sapere la corretta sintassi per la formula cerca vert dato che non riesco ad applicarla su una tabella contenuta in un altra cartella di lavoro excel.
Se inserisco i riferimenti di cella della matrice funziona, ma se aggiungo altre celle al database sono costretto a cambiare sempre la formula per aggiornare il file e lavorando con una tabella che aumenta costantemente di giorno in giorno questa operazione
diventa un po scomoda. Non riesco tuttavia a scrivere corrttamente la formula.
Ho povato piu volte ma funziona solo se la tabella si trova nello stesso foglio in cui si trova la formula cerca vert, mentre invece non funziona se la tabella e' in un altra cartella di lavoro.
Un approccio ad una tabella di ricerca dinamica in una cartella di lavoro chiusa potrebbe essere di rivolgersi a VBA.
Per dimostrare questo approccio, prova qualcosa del genere:
- Fai clic dx sulla linguetta del foglio con la tabella di ricerca
- Seleziona l'opzione Visualizza Codice dal ****
menu contestuale risultante
- Incolla il seguente codice:
'=========>>
Option Explicit
'--------->>
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range, Rng2 As Range
Dim Nme As Name
Const sColonneTabella = "A:C" '<<=== Modifica
Const sPrimaCellaTabella As String = "A1" '<<=== Modifica
Const sNomeTabella As String = "MiaTabella" '<<=== Modifica
With Me
Set Rng = Intersect(.Range(sPrimaCellaTabella).CurrentRegion, _
.Columns(sColonneTabella))
End With
If Rng Is Nothing Then
Exit Sub
Else
ThisWorkbook.Names.Add Name:=sNomeTabella, RefersTo:=Rng
End If
End Sub
'<<=========
- Alt+Q per chiudere l'editor di VBA e tornare a Excel.
- Salva il file con l'estensione xlsm.
Questo codice automaticamente crea o aggiorna l'intervallo del nome definito MiaTabella assegnato alla tabella.
Per le mie prove ho creato un file MyDataBase.xlsm con una tabella di ricerca nell'intervallo A1:C50 del primo foglio. Ho poi creato un file di prova,
TestLookup.xlsx in cui ho inserito delle semplice formule del tipo:
=CERCA.VERT(A2;'C:\Users\NDJ\Dropbox\MyDatabase.xlsm'!MiaTabella;2;0)

Se le formule fossero immesse quando il primo file è aperto, non sarebbe necessario includere anche il percorso del primo file in quanto verrà automaticamente aggiunta alla chiusura del file.
Queste formule restituiranno i risultati voluti, independentmente di eventuali modifiche alla tabella di ricerca dinamica, e independentente del fatto che quel file sia chiuso o aperto.
Potresti scaricare il file zippato **MyDatabase.zip.**che comprende le mie due file,
MyDatabase.xlsm e TestLookup.xlsx, a:
https://www.dropbox.com/s/s3hu9bh3r1had61/MyDatabase.zip?dl=0
Anche se non cambia il principio di questo suggerimento, ti consiglierei anche di prendere in considerazione l'uso delle due funzioni INDICE e CONFRONTO, anzichè CERCA.VERT, per la tua esigenza in quanto sono più flessibile e non sono volatile.
===
Regards,
Norman