di Anthony47 » 18/02/09 23:41
Se non sbaglio la parte Indice+Confronta e' semplificabile in Cerca.Vert(Ticker;S14:S300;0).
Per quanto riguarda la domanda, si puo' fare usando Application.WorksheetFunction.NomeFunzione
NomeFunzione e' Index per Indice, Match per Confronta e Vlookup per Cerca.Vert.
La complicazione nasce dal fatto che se usi Vlookup e il dato cercato non esiste allora l' istruzione fallisce con un errore di vba; idem se usi Match; se invece usi Index e il valore estratto dall' elenco e' un #N/D allora la variabile di destinazione conterra' un codice di errore (la stessa variabile, se dichiarata, deve essere dichiarata "as Variant"; oppure non dichiarata e allora sara' variant di default).
Nel primo caso puoi trappare l' eventuale errore con On Error Goto GestErr ; nel secondo caso devi controllare l' eventuale errore contenuto nella label. Probabilmente devi fare una combinazione.
Insomma: la cosa piu' semplice e' lasciare tutto su formula; eventualmente puoi "inserire" la formula da vba con
Range("C1").FormulaLocal="=SE(VAL.NON.DISP(INDICE(R14:R300,CONFRONTA(Ticker,S14:S300,0))),""Error"",""Ok"")"
Ciao.