Risultati da 1 a 8 di 8

Discussione: Ricerca su file chiusi



  1. #1
    L'avatar di ouebgi
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    italia
    Messaggi
    15
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0

    Ricerca su file chiusi

    Ciao a tutti,

    sono alle prese con qs problema:
    - nel file AAA (1cartel2) ho una tabella A da riempire con valori da cercare in una seconda tabella B che si trova nel file BBB (1cartel1)
    - vorrei paramerizzare il tutto scrivendo ogni volta nel file AAA il nome/percorso del file BBB da cui copiare
    - vorrei inoltre usare nelle celle della tabella A un funzione a cui passo il nome del file BBB, il valore da cercare e il range/matrice
    - nella funzione che voglio usare in BBB ho pensato di utilizare l'analogo di cerca.vert e cioé application.worksheetfunction.Vlookup(......)
    - il tutto funziona se anche il file BBB è aperto
    - se il file BBB è chiuso la funzione restituisce l'errore #VALORE!

    ho provato a passare il range di ricerca ad application.worksheetfunction... in tanti modi (variabile, scritto esplicitamente, ecc.) ma non riesco a farla lavorare con BBB chiuso.

    Dalle ricerche fatte non si capisce se si in VBA è possibile o no utilizzare la classica application.WorkSheetFunction (quale che sia la funzione) per recuperare un dato da file chiuso.


    Qualcuno ha uno dei suoi preziosi suggerimenti?

    Grazie.
    File Allegati File Allegati

  2. #2

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Napoli
    Età
    64
    Messaggi
    6814
    Versione Office
    2013
    Likes ricevuti
    721
    Likes dati
    165

    Re: Ricerca su file chiusi

    Ciao ouebgi

    Purtroppo il CERCA.VERT in VBA (application.worksheetfunction.Vlookup) non funziona su file chiusi; sarei lieto di essere smentito ma in passato ho posto l'argomento su vari forum ma non ricordo ci sia stata una risposta definitiva.

    Però va il CERCA.VERT normale

    se scrivi

    Codice: 
    =CERCA.VERT(A1;'C:\Excel\1Cartel1.xlsx'!dati;2;FALSO)
    ovviamente cambiando il percorso tutto funziona regolarmente.

    Alfredo

  3. #3

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Napoli
    Età
    64
    Messaggi
    6814
    Versione Office
    2013
    Likes ricevuti
    721
    Likes dati
    165

    Re: Ricerca su file chiusi

    In alternativa con il VBA potresti usare un codice del genere

    Codice: 
    myVal = Range("a1").Value
    Range("M1").Formula = _
        "=VLOOKUP(""" & myVal & """,'C:\Excel\[1Cartel1.xlsx]sito1'!A1:B4,2,0)"
    ma equivale a mettere, con il VBA, un normale CERCA.VERT().

    Alfredo

  4. #4
    L'avatar di ouebgi
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    italia
    Messaggi
    15
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0

    Re: Ricerca su file chiusi

    Grazie Alfredo,
    mi sa che hai ragione anche se una risposta definitiva e certa sembra non esserci.
    Nel frattempo ho trovato un thread di Tanimon "vba, cerca.vert con campo ricerca variabile " dove ci sono un paio di soluzioni interessanti.

    Entrambe le soluzioni sono utilizzate all'interno di macro, io vorrei applicarle all'inteno di una funzione tipo:

    function pippo (nomefileBBB)

    Cells(1, 2).FormulaLocal = "=CERCA.VERT(A" & 2 & ";'" & nomefileBBB & ";2;0)"
    (o in alternativa Cells(1, 2).FormulaR1C1 = "=VLOOKUP(RC1,'" & nomefileBBB & ",2,0)")

    end function

    da scrivere in un modulo del file AAA e richiamare/scrivere la funzione nelle celle del foglio AAA.
    Ora, il passaggio del parametro nomefileBBB avviene in modo corretto, il problema è che la funzione "termina" quando vado ad eseguire l'istruzione Cells(.... Ho messo anche dei breakpoint dopo l'istruzione Cells(... per fare dei controlli ma non ci arrivo perchè appunto esce prima.

    Per curiosità ho provato ad usare in pippo una formula registrata con registratore macro e cioé Cells(1, 8).FormulaLocal = "=SUM(A1:A16)" e anche in questo caso la funzione non viene terminata.

    Domanda: le funzioni .FormulaR1C1/.FormulaLocal possono essere usate solo all'interno di macro e non di funzioni utente?

  5. #5

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Napoli
    Età
    64
    Messaggi
    6814
    Versione Office
    2013
    Likes ricevuti
    721
    Likes dati
    165

    Re: Ricerca su file chiusi

    Le due ipotesi che hai fatto, alla fin fine, sono come la mia seconda precedente; inseriscono in una cella una formula e non come avevamo inteso noi andare ad estrarre il dato su un file chiuso con il VBA.

    Le formule sembrano funzionare anche su file chiusi il VBA no (e chissà perché non credo che in Microsoft avrebbero avuto grandi difficoltà a fare una cosa del genere).

    Le proprietà .FormulaR1C1/.FormulaLocal sono prettamente VBA.

    Alfredo

  6. #6
    L'avatar di ouebgi
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    italia
    Messaggi
    15
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0

    Re: Ricerca su file chiusi

    l'obiettivo è quello che dicevi tu, di estrarre dati da un file chiuso.
    Mi sembra di aver però capito che l'unico modo per farlo sia inserire nelle celle la formula di estrazione, usando al massimo una macro e non una funzione.
    Se esiste altra via sono qua.

  7. #7
    L'avatar di Marius44
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    73
    Messaggi
    3222
    Versione Office
    Excel2010
    Likes ricevuti
    628
    Likes dati
    155

    Re: Ricerca su file chiusi

    Buon giorno a tutti

    @alfrimpa
    è vero Alfredo, in altro Forum abbiamo affrontato il problema del CERCA.VERT su file chiusi senza venirne a capo.

    Una soluzione, con VBA, c'è ed è la Function di John Walkenbach.
    Segnalo questi due indirizzi:
    " http://ennius.altervista.org/vba/vba140.php "
    " http://spreadsheetpage.com/index.php...a_closed_file/ "

    Ciao,
    Mario

  8. #8
    L'avatar di ouebgi
    Clicca e Apri
    Data Registrazione
    Feb 2016
    Località
    italia
    Messaggi
    15
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0

    Re: Ricerca su file chiusi

    Grazie Marius, una bella dritta. Non conoscevo la funzione excel4macro.

    Purtroppo, da quanto ho visto e dice John Walkenbach, nn può essere richiamata da una formula all'interno di un foglio (e quindi nemmeno da una funzione che chiama la macro testgetvalue o che chiama direttamente la function getvalue, almeno le prove che ho fatto sono tutte negative).

    L'unico modo che mi rimane è quello di scrivere la funzione cerca.vert in ogni cella di AAA, che potrebbe andare bene: in fondo è una funzione che mi permette un maggior conrollo di una macro di cui non vedo nulla a meno di aprie il VBA. Il poblema è che non riesco a passare la tabella_matrice sotto forma di parametro (inserito in una cella).

Discussioni Simili

  1. Tabella task aperti / chiusi
    Di gian_983 nel forum Domande su Excel in generale
    Risposte: 1
    Ultimo Messaggio: 20/01/17, 19:13
  2. [Risolto] Ricerca di file Excel in una directory
    Di Cecco Beppe nel forum Domande su Excel VBA e MACRO
    Risposte: 6
    Ultimo Messaggio: 09/01/17, 13:28
  3. Aggiornamento File escel chiusi
    Di baudo90 nel forum Domande su Excel VBA e MACRO
    Risposte: 1
    Ultimo Messaggio: 15/12/16, 23:37
  4. ricerca file nel forum
    Di zio_tom nel forum Problemi, suggerimenti e Novità del forum
    Risposte: 3
    Ultimo Messaggio: 04/06/16, 19:52
  5. Ricerca su più file Excel
    Di James nel forum Domande su Excel VBA e MACRO
    Risposte: 6
    Ultimo Messaggio: 22/03/16, 13:20

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •