|
Rank: Member
Iscritto dal : 12/20/2001 Posts: 0
|
Salve. Ho un file, chiamiamolo "importa" : non riesco a inserire una formula SCARTO che però faccia riferimento ad una cella di un'altro file chiuso ( chiamiamolo "fonte" ). Mi restituisce il valore solo se apro il file "fonte". Ma è possibile fare una cosa del genere ( senza query, solo con un collegamento di cella semplice )? Grazie, ciao Michele
|
|
|
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
la funzione scarto così come la maggior parte delle funzioni opera su cartelle esterne solo se queste sono aperte contemporaneamente al file in uso. Non credo ci siano altre possibilità. saluti Andrea
|
|
Rank: Member
Iscritto dal : 12/20/2001 Posts: 0
|
Ciao, Andrea, grazie per la risposta, sei molto gentile, come al solito. Si, in effetti, lo avevo letto. Ora sto provando con una macro semplicissima che mi scrive il collegamento; solo che io vorrei far dipendere il riferimento di cella da una variabile. Ovvero : è possibile mettere la variabile i all'interno delle parentesi di RC ? Qualcosa del genere.
Dim i i = Range("b1").Value ActiveCell.FormulaR1C1 = "='C:\Documents\ [Fonte.xls]Foglio1'!R[i]C"
Ma non funziona : come posso fare ?
Saluti.
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
perchè scomodare una variabile se il riferimento alla cella è assoluto? dovrebbe essere sufficiente questa sola riga: ActiveCell.Formula = "='C:\Documents\[Fonte.xls]Foglio1'!B1" saluti Andrea
|
|
Rank: Member
Iscritto dal : 12/20/2001 Posts: 0
|
Non, il riferimento non è assoluto. Ovvero, in b1 you scrivo il numero di riga della cella da cui pesco il dato nel file "fonte". Così io vorrei variare a piacimento questo numero di riga, senza dover aprire il file di origine.
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
volendo utilizzare le variabili questo è quello che farei:
Dim ri, co ri = Range("b1").Row co = Range("b1").Column Range("b5").Select ActiveCell.Formula = "='C:\Documents\[Fonte.xls]Foglio1'!R" & ri & "C" & co
In sintesi dichiaro il numero di riga e colonna della cella da prelevare dal foglio Fonte. saluti Andrea Edited by - a10n11 on 09/29/2005 12:49:37
|
|
Rank: Member
Iscritto dal : 12/20/2001 Posts: 0
|
Grazie, andrea, funzione alla perfezione. Mi è bastato sostituire .Value a .row e .column perchè a me non servono la riga e la colonna di b1, ma utilizzare il valore contenuto in b1. Vorrei però chiederti un'ultima cosa ( scusa se abuso della tua gentilezza ) : così com'è la macro mi genera un riferimento assoluto, per esempio
='C:\Documents\[Fonte.xls]Foglio1!$R$4
come devo scrivere, se io voglio che sia relativo, quindi
='C:\Documents\[Fonte.xls]Foglio1!R4
? Ti ringrazio, saluti Michele
|
|
Rank: AiutAmico
Iscritto dal : 5/29/2003 Posts: 1,694
|
per la conversione da Rif. assoluto a Rif. relativo puoi ricorrere all'oggetto Applicazione CovertFormula di cui qui sotto la sintassi: ActiveCell.FormulaR1C1 = Application.ConvertFormula _ (ActiveCell.FormulaR1C1, xlR1C1, , xlRelative, ActiveCell) saluti Andrea
|
|
Rank: Member
Iscritto dal : 12/20/2001 Posts: 0
|
Grazie mille, andrea ! Saluti Michele
|
|
Guest |