Acquista i nostri libri consigliati su Amazon.it
+ Rispondi al messaggio
Pagina 1 di 2 12 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Copiare valore cella da file esterno

  1. #1
    SirNino non è in linea Scolaretto
    Ciao a tutti, ho un problema con l'importazione di un valore da un file esterno.

    Ho una cartella che contiene 5 file
    1. W20.xlsx
    2. W21.xlsx
    3. W22.xlsx
    4. W23.xlsx
    5. W24.xlsx

    all'interno del file in questione devo richiamare il valore di una cella determinata usando il metodo CONCATENA e STRINGA.ESTRAI

    Tipo questa:

    =CONCATENA("'c:\PROVA\W";STRINGA.ESTRAI(A2;6;2);". xlsx[Anno 2013]'!$H$16")

    Ma ovviamente non funziona.... dandomi l'indirizzo corretto ma non il contenuto dell'indirizzo.

    Qualcuno saprebbe aiutarmi?

    Grazie in anticipo
    ℹ️ Leggi di più su SirNino ...

  2. #2
    Marius44 non è in linea Scolaretto
    Credo che per recuperare un dato da un file esterno con le formule Excel, il file esterno DEVE essere aperto.
    Pertanto la formula da te postata andrebbe corretta così (ammesso che il primo dato da concatenare si trovi nel Foglio1):
    =CONCATENA(STRINGA.ESTRAI([Anno2013.xlsx]Foglio1!A2;6;2);$H$16)
    Fammi sapere

  3. #3
    alfrimpa non è in linea Scolaretto
    @ Marius

    Ciao Mario,

    A prescindere dal quesito posto da SirNino (che saluto) ma solo per riferire la mia esperienza ricordo di essere riuscito in passato a far riferimento ad una cella di un foglio in un file chiuso. Ora non mi sovviene se si trattava di una formula o un semplice =A1 ma funzionava anche con il file non aperto.

    Diverso è il discorso qualora si voglia reperire il dato da un file chiuso attraverso le funzioni con il VBA; ad esempio ho provato in tutti i modi di "pescare" un valore con un CERCA.VERT con il VBA con Application.WorkSheetFunction.VLookup in un file chiuso ma non ci sono mai riuscito e pur chiedendo in giro sui vari forum non sono arrivato mai a capo di niente.

    Un saluto.

    Alfredo
    Ultima modifica di alfrimpa; 31-05-2015 19:50 

  4. #4
    SirNino non è in linea Scolaretto
    Ciao, grazie per le vostre esperienze
    purtroppo quello che voglio è proprio un dato da un file chiuso (probabilmente), oppure aperto in un momento che...ovviamente non è questo...
    l'unica cosa che fino ad ora ho trovato è la funzione INDIRETTO che purtroppo vale quando parliamo di file aperti o aperti a strettissimo giro; quello che a me servirebbe è qualcosa che mi possa restituire un dato da un file esterno a prescindere dall'apertura.
    ℹ️ Leggi di più su SirNino ...

  5. #5
    Marius44 non è in linea Scolaretto
    Ciao Alfredo,
    grazie per l'intervento.
    Anch'io ho provato diversissime volte a cercare di reperire un dato da un Foglio chiuso ma, al contrario di quello che affermi (e non ho dubbi che risponde al vero), non ci sono mai riuscito.
    Ci sono riuscito, invece, utilizzando “ExecuteExcel4Macro” applicata ad una funzione Excel. Ma non sono così bravo da inventare simili magie. Tempo fa, girovagando per la rete, ho trovato i seguenti siti che affrontavano il problema:
    1° - h t t p ://www.manuali.net/forum/archive/index.php/t-19123.html - del 15/12/2003
    2° - h t t p ://renato7.altervista.org/ExecuteExcel4Macro.html - ma non so precisarti la data.
    Sicuramente potranno venirci utili.

    Per quanto attiene il problema di SirNino ho suggerito quella variante (che per me funziona) perché avevo l’impressione che, così come era postata la formula, mancasse il secondo termine alla funzione Concatena.

    Grazie ancora e a risentirci.
    Mario

  6. #6
    alfrimpa non è in linea Scolaretto
    Ciao Mario

    In ExecuteExcel4Macro mi ero imbattuto quando ricercavo una soluzione al problema che dicevo poc'anzi (cerca.verti in VBA) ma neanche io ho provato ad utilizzarla.

    Ora sono fuori ma quando rientro a casa ci riprovo di nuovo con la speranza di poter risolvere anche il problema di SirNino.

    Alfredo

  7. #7
    SirNino non è in linea Scolaretto
    Quote Originariamente inviato da Marius44 Visualizza il messaggio
    ...

    Per quanto attiene il problema di SirNino ho suggerito quella variante (che per me funziona) perché avevo l’impressione che, così come era postata la formula, mancasse il secondo termine alla funzione Concatena.
    Ciao Mario e grazie ancora per la tua risposta.

    Nella funzione di prima sono presenti non 2 ma 3 operatori

    =CONCATENA("'c:\PROVA\W";STRINGA.ESTRAI(A2;6;2);". xlsx[Anno 2013]'!$H$16")
    
    1. "'c:\PROVA\W"
    2. STRINGA.ESTRAI(A2;6;2)
    3. ". xlsx[Anno 2013]'!$H$16"

    nel primo operatore inserisco l'inidirizzo del file che mi interessa e il prefisso del nome del file, nel secondo ricavo la parte finale del nome (identificativo del file) e col terzo gli do estensione e posizione interessata.
    Avrei voluto realizzarlo così ma, da quanto vedo e leggo, non credo sarà possibile quindi mi dovrò creare una macro in VBA.
    ℹ️ Leggi di più su SirNino ...

  8. #8
    Marius44 non è in linea Scolaretto
    Scusa SirNino,
    se ho ben capito il problema, vuoi prendere una parte del testo in una cella di un file chiuso e unirla ad una cella del file sul quale stai lavorando. Pertanto dobbiamo avere un indirizzo di file e la sua cella più la cella del tuo file, cioè
    CONCATENA(testo1;testo2)
    Quindi al posto di testo1 dobbiamo mettere l'estrazione dal file chiuso, cioè
    STRINGA.ESTRAI(testo;inizio;num_caratt)
    Il testo di Stringa.Estrai è il contenuto della cella A2 all'indirizzo del file chiuso, da qui partiamo (inizio di Stringa.Estrai) dal sesto carattere per prelevarne due (num_caratt di Stringa:Estrai). Tutto quanto sopra lo uniamo alla nostra cella H16, cioè testo2 di CONCATENA.
    Sviluppando la formula abbiamo:
    =CONCATENA(STRINGA.ESTRAI('"C:\PROVA\W[Anno2013.xlsx]Foglio1'!A2;6;2);$H$16) .
    Ciao

  9. #9
    SirNino non è in linea Scolaretto
    No, allora chiedo scusa a tutti per essermi spiegato così male.
    io ho un file aperto in cui voglio visualizzare il contenuto di una (o più) celle di un file chiuso; per fare questo ho a disposizione:
    1. indirizzo del file chiuso
    2. Nome del file chiuso (che ricavo tramite la funzione estrai da una cella nel file aperto)
    3. posizione della cella del file chiuso


    La funzione

    =CONCATENA("'c:\PROVA\W";STRINGA.ESTRAI(A2;6;2);". xlsx[Anno 2013]'!$H$16")
    
    è corretta perché mi restituisce esattamente l'indirizzo, il foglio e la casella che mi interessano, ma non il contenuto.
    ℹ️ Leggi di più su SirNino ...

  10. #10
    Marius44 non è in linea Scolaretto
    Ho provato la formula da te postata, così com'è, in una cella di un mio Foglio vuoto. Ovviamente io non una cartella denominata PROVA\W nè, tanto meno, un Foglio denominato Anno 2013. La risposta nella cella è: 'c:\PROVA\W.xlsx[Anno 2013]'!$H$16
    La formula ti ha dato in risposta quello compreso fra gli apici, cioè CONCATENA ha interpretato quanto scritto tra i primi apici come testo1, non ha estratto nulla con la funzione STRINGA.ESTRAI (controlla che la cella A2 del foglio dove hai postato la formula deve essere vuota) e poi ha ripreso quanto scritto tra gli apici (seconda parte) interpretandolo cole testo2.
    Io continuo a provare ma mi pare moooolto difficile riuscire a trovare una soluzione con le formule, forse con VBA.
    Ciao.

+ Rispondi al messaggio
Pagina 1 di 2 12 ultimoultimo

Potrebbero interessarti anche ...

  1. Copiare riga su foglio se valore cella x
    Da oilcrovara nel forum Microsoft Word
    Risposte: 1
    Ultimo Post: 08-12-2020, 20:54
  2. copiare riga in base a valore cella nel rispettivo foglio
    Da giorgio61 nel forum Microsoft Excel
    Risposte: 9
    Ultimo Post: 10-05-2017, 19:13
  3. Controllo corrispondenza valore cella con file esterno
    Da peghi nel forum Microsoft Excel
    Risposte: 6
    Ultimo Post: 15-06-2016, 00:01
  4. Risolto: VB.Net 2008 - Confrontare valore variabile con file esterno
    Da fabbroniko nel forum Visual Basic .Net
    Risposte: 7
    Ultimo Post: 16-09-2010, 16:56
  5. Copiare il valore di cella di una MSHFlexGrid
    Da dade_n nel forum Visual Basic 6
    Risposte: 20
    Ultimo Post: 26-07-2006, 11:55