Condividi:        

Crea collegamento Fogli tra File Excel

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Crea collegamento Fogli tra File Excel

Postdi Omocaig » 01/07/15 17:01

Ciao, avrei una domanda.
Utilizzo Excel 2003, ho un file ( Contatore ), il cui foglio Totale raccoglie tramite una macro i records di altri 13 files, vorrei che in ognuno dei 13 files fosse inserito un collegamento al foglio Totale del file Contatore, magari il foglio Totale stesso ma in sola lettura. Non credo che si possa fare via Hyperlink, qualcuno ha qualche suggerimento ? E soprattutto, è possibile farlo ?

Ciao a tutti
Xp + Office 2016 Ita
Omocaig
Utente Junior
 
Post: 93
Iscritto il: 11/05/15 15:08

Sponsor
 

Re: Crea collegamento Fogli tra File Excel

Postdi Flash30005 » 01/07/15 17:59

Che macro usi per importare i "records" dei 13 file?
Avendo la macro potremmo pensare di implementarla facilmente

ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Crea collegamento Fogli tra File Excel

Postdi Omocaig » 01/07/15 18:22

Ciao, utilizzo la magimacro che ha fatto anthony47

Codice: Seleziona tutto
Sub Recall()
'Vedi http://www.pc-facile.com/forum/viewtopic.php?f=26&t=104659
Dim NArr(1 To 20) As String, Dest As Worksheet, myPath As String, myFFile As String
Dim I As Long, LastR As Long, myNext As Long, myStart As Long
'
NArr(1) = "pippo1.xlsx"             '<<< L' elenco dei file da cui raccogliere
NArr(2) = "pippografico.xlsm"       '<<<
NArr(3) = "pippo_Cartel1.xls"       '<<<
NArr(4) = "SCR_emails.xlsx"         '<<<
'etc etc

mytim = Timer
myStart = 14                        '<<< La riga da dove partono i dati
myPath = ThisWorkbook.Path & Application.PathSeparator
Set Dest = ThisWorkbook.Sheets("Totale")
Dest.Range("A14").Resize(10000, 30).Clear
Application.EnableEvents = False
For I = 1 To 20
    If NArr(I) <> "" Then
        myNext = Dest.Range("A:AD").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
        If myNext < myStart Then myNext = myStart
        myFFile = myPath & NArr(I)
        Workbooks.Open Filename:=myFFile, ReadOnly:=True
        Worksheets(1).Select: LastR = 0
        On Error Resume Next
            LastR = Range("A:AD").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
        On Error GoTo 0
        If LastR > myStart Then
            Range(Cells(myStart, "A"), Cells(LastR, "AD")).Copy Destination:=Dest.Cells(myNext, 1)
        End If
        ActiveWorkbook.Close savechanges:=False
    End If
'Debug.Print I & " - " & Format(Timer - mytim, "0.00")
Next I
Application.EnableEvents = True
'ThisWorkbook.Save                          '<<< **VEDI TESTO
End Sub
Xp + Office 2016 Ita
Omocaig
Utente Junior
 
Post: 93
Iscritto il: 11/05/15 15:08

Re: Crea collegamento Fogli tra File Excel

Postdi Anthony47 » 01/07/15 21:50

Ma tu che cosa intendi per "vorrei che in ognuno dei 13 files fosse inserito un collegamento al foglio Totale del file Contatore, magari il foglio Totale stesso ma in sola lettura".

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Crea collegamento Fogli tra File Excel

Postdi Omocaig » 02/07/15 10:14

Intendo, vorrei che i files si presentassero così:

File1 contiene:
FoglioA, Foglio A'

File2 contiene:
FoglioB, Foglio A'

File 3 contiene:
Foglio C, Foglio A'

Poi ho specificato "in sola lettura" perchè mi sono immaginato quello che potrebbe succedere se lo stesso foglio fosse aperto su più file ( ho tanta immaginazione ).
Ho bisogno di questo perchè il foglio A' contiene delle informazioni dagli utenti del foglio 2 e 3 e così via. Presumo che ora tu mi dica: se vuoi che un foglio sia condiviso su più files è necessario che tutti i files siano nella stessa cartella e quindi, se gli utenti possono accedere alla cartella, perchè non aprire il file 1 contenente il foglio A' e consultarlo direttamente ? E io ti dico ok, ma non si può fare come cosa ? Avere due file da 20 Mb aperti oltre che ad altri software rallenta un sacco i PC...

Grazie Mille !!
Xp + Office 2016 Ita
Omocaig
Utente Junior
 
Post: 93
Iscritto il: 11/05/15 15:08

Re: Crea collegamento Fogli tra File Excel

Postdi Anthony47 » 02/07/15 23:37

Ma quindi vorresti inserire in ognuno dei file che hanno generato il riepilogo il foglio di riepilogo stesso? (cioe' il foglio Totale del file Contatore.xls).
Comunque non ti dico che "se vuoi che un foglio sia condiviso su più files è necessario che tutti i files siano nella stessa cartella" perche' questo non ha senso: un "foglio di lavoro" e' una struttura dati che esiste all'interno di un file excel (microsoft la chiama Cartella di lavoro), e non e' condivisibile da piu' file; al massimo puo' il file essere condiviso tra piu' utenti che ci lavorano in parallelo; vedi l'help on line alla voce "Condividere una cartella di lavoro".

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Crea collegamento Fogli tra File Excel

Postdi Omocaig » 03/07/15 12:07

Si, quello che intendevo era proprio inserire in ognuno dei file che hanno generato il riepilogo il foglio di riepilogo stesso.

Purtroppo mi occorre che all'inserimento di un nuovo record in ognuno dei file che generano il riepilogo ci sia la possibilità di controllare se il record è già presente all'interno del riepilogo. Pensavo di risolverla così, cioè, andare sul foglio di riepilogo controllando un'eventuale omonimia tramite la seguente macro per la ricerca del nominativo. viewtopic.php?f=26&t=104852

Ho l'esigenza però di tenere aperto un solo file excel per computer, quindi un utente non deve aprire il file Contatore.xls ( che è condiviso ) oltre al quello personale, credo che l'opzione di riadattare la macro come consigliava Flash30005 sia la cosa migliore.

Potrei per esempio partire con una macro auto-registrata che incolli i records del file Contatore.xls in un nuovo foglio dei file che vanno a generare il repilogo e dotare questi fogli di due celle per la ricerca. Poi eseguire la macro successivamente a quella che genera il riepilogo, così da aggiornare il contenuto in ognuno dei file che generano il riepilogo all'aggiornamento del riepilogo nel file Conatore.

Saluti a tutti ! Grazie !
Xp + Office 2016 Ita
Omocaig
Utente Junior
 
Post: 93
Iscritto il: 11/05/15 15:08

Re: Crea collegamento Fogli tra File Excel

Postdi Flash30005 » 04/07/15 01:05

Rispondo con molta fretta e senza poter testare la macro (dovrei avere qualche file come test)
comunque mi sembra di capire che potresti risolvere con questa modific
Codice: Seleziona tutto
 
'---tua macro
Workbooks.Open Filename:=myFFile, ReadOnly:=True  '<< esistente
        Worksheets(1).Select: LastR = 0  '<< esistente
NF =  Worksheets(1).name      '<<<<<<< aggiungere qui
        On Error Resume Next   '<< esistente
            LastR = Range("A:AD").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
        On Error GoTo 0
        If LastR > myStart Then
            Range(Cells(myStart, "A"), Cells(LastR, "AD")).Copy Destination:=Dest.Cells(myNext, 1)  '<<<< esistente***
           Range(Cells(myStart, "AE"), Cells(LastR, "AE")).value = NF   '<<<<<<< aggiungere qui
        End If

(***) Fai attenzione perché ho utilizzato la colonna "AE" per i nome foglio se occupata da altri dati cambiare quel riferimento con una colonna libera
Fai sapere
ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "Crea collegamento Fogli tra File Excel":


Chi c’è in linea

Visitano il forum: Ricky0185 e 44 ospiti