MACRO CONSOLIDA / COLLEGAMENTO

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
andrea_c.ExcelForum
00sabato 18 febbraio 2017 15:31
Gestione database, collegamento tra cartelle
Buongiorno a tutti,

mi trovo a dover gestire un database nel quale riporto i valori provenienti da altri file excel. Questi file excel da cui prendo i valori hanno tutti lo stesso format, ossia i valori di mio interesse sono riportati sempre nelle stesse celle Quello che sto cercando di fare è automatizzare il processo, evitandomi così lunghi e noiosi capia/incolla. So dell'esistenza della funzione "PERCORSO" (es. C:\Documenti\[A1.xlsx]Foglio3'!$B$1), ma tale funzione non è "automatica", ossia dovrei andare ogni volta a cambiare il nome del file excel da cui attingere.

Quello a cui vorrei arrivare è un file in cui nella prima colonna siano riportati i nomi dei file da cui pescare i dati e in ciascuna riga il corrispondente percorso in aggiornamento automatico.

In altre parole un database che si sviluppa in orizzontale pescando i dati da altre cartelle (vedi immagine allegata).

Se conoscete una macro a riguardo tanto meglio! [SM=x423026]

Grazie in anticipo per l'aiuto!
Andrea
alfrimpa
00sabato 18 febbraio 2017 15:40
Andrea il testo del tuo post risulta incomprensibile perchè pieno di "diciture strane"

Riproponili controllando in anteprima che sia leggibile correttamente.
andrea_c.ExcelForum
00sabato 18 febbraio 2017 15:52
Ciao Alfredo,

hai pienamente ragione, avevo fatto un copia incolla di una tabella per fare un esempio.
Ad ogni modo ora ho sistemato.

Grazie,
Andrea
alfrimpa
00sabato 18 febbraio 2017 17:26
Onestamente non ho capito il tuo obiettivo finale.

Puoi allegare dei file di esempio con il risultato desiderato inserito a mano su uno di questi?
andrea_c.ExcelForum
00venerdì 24 febbraio 2017 11:37
Ho approfondito il tema [SM=x423024] , ed ho capito che ciò che voglio fare non è altro che la funzione CONSOLIDA. Ciò che vorrei arrivare quindi a fare è una macro che permetta di avere la funzione CONSOLIDA in automatico.

Andrea
alfrimpa
00venerdì 24 febbraio 2017 11:58
Non avendo mai usato il CONSOLIDA non lo conosco ma se fai le operazioni manualmente registrando la macro al termine avrai il codice.
andrea_c.ExcelForum
00lunedì 27 febbraio 2017 11:58
Buongiorno a tutti,

mi trovo alle prese con la gestione di un database nel quale vengono riportati dati da altri file. Questi file da cui si prendono i dati da riportare nel "masterdata" hanno tutti la stessa struttura e si trovano tutti in una determinata cartella.
Quello che sto cercando di fare è di automatizzare il lavoro, evitandomi così lunghi e noiosi copia/incolla [SM=x423051].
So dell'esistenza della funzione CONSOLIDA e della funzione PERCORSO, ma entrambe non so come automatizzarle.
Quello a cui mi piacerebbe arrivare tramite macro è un "masterdata" nel quale leggendo il nome del file da cui prendere i dati in una determinata cella mi faccia il copia/incolla in automatico nelle apposite celle.

Vi ringrazio fin da subito per l'aiuto!

Andrea
alfrimpa
00lunedì 27 febbraio 2017 12:27
Scusa Andrea ma questa discussione non è la replica di questa?

http://www.freeforumzone.com/d/11364306/Gestione-database-collegamento-cartelle/discussione.aspx
andrea_c.ExcelForum
00lunedì 27 febbraio 2017 12:46
Si Alfredo, lo è. L'altra discussione mi sembra alquanto morta e sto continuando la mia ricerca.
Inoltre, a causa mia, la discussione era alquanto confusa. Ho preferito resettare e ripartire con un'altra.

Andrea
alfrimpa
00lunedì 27 febbraio 2017 13:24
Ti avevo già suggerito di fare manualmente il consolidamento registrando la macro; hai provato?
andrea_c.ExcelForum
00lunedì 27 febbraio 2017 13:26
Si, ho provato. Non è quello il mio obiettivo.

Grazie,
Andrea
alfrimpa
00lunedì 27 febbraio 2017 15:00
Scusa ma l'idea di allegare uno straccio di file di esempio con dati, spiegazione e risultato desiderato inserito a mano non ti sfiora neanche?.

Puoi farci vedere quello che tu hai fatto per cercare di risolvere il problema e dove ti sei bloccato?
by sal
00lunedì 27 febbraio 2017 15:25
Unione
Ciao unisco le 2 discussioni

per riportare la discussione di nuovo nelle prime pagine, basta fare scrivere un nuovo post, anche con scritto, "AIUTO"

By Sal [SM=x423051]
andrea_c.ExcelForum
00giovedì 9 marzo 2017 00:25
Grazie sal! Non sapevo della possibilità di scrivere AIUTO per far tornare "in vita" la discussione.
Ad ogni modo, polemiche a parte, volevo dirvi che approfondendo la tematica sono riuscito ad arrivare alla soluzione, o meglio sono al 90%. Mi piacerebbe quindi condividerla con voi sperando che qualcuno possa aiutarmi colmando quel 10% che mi manca.

Ho risolto il problema implementando la seguente macro che mi crea dei collegamenti per ciascuna riga:

Sub Test()
Range("B2").Select
Do While ActiveCell.Offset(0, -1).Value <> ""


FILE = ActiveCell.Offset(0, -1).Value
ActiveCell = "='C:\Users\Andrea\Documents\CONSOLIDA\[" & FILE & "]a '!$B$2"


ActiveCell.Offset(1, 0).Select
Loop

Range("C2").Select
Do While ActiveCell.Offset(0, -2).Value <> ""


FILE = ActiveCell.Offset(0, -2).Value
ActiveCell = "='C:\Users\Andrea\Documents\CONSOLIDA\[" & FILE & "]a '!$B$3"


ActiveCell.Offset(1, 0).Select
Loop

Range("D2").Select
Do While ActiveCell.Offset(0, -3).Value <> ""


FILE = ActiveCell.Offset(0, -3).Value
ActiveCell = "='C:\Users\Andrea\Documents\CONSOLIDA\[" & FILE & "]a '!$B$4"


ActiveCell.Offset(1, 0).Select
Loop

End Sub

Allego il masterdata e i file correlati per cercare di piegarmi meglio.

Ciò che mi manca è l'implementazione della parte relativa agli "ARTICOLI" (vedi file). Infatti nei file A1, A2, A3 gli articoli sono riportati in 3 righe, mentre nel master data dovrei riportarli tutti in un'unica cella. Sapete dirmi come fare?

Grazie mille,
Andrea
andrea_c.ExcelForum
00lunedì 13 marzo 2017 20:05
AIUTO.


Qualcuno che sa darmi una dritta per favore?

Grazie mille,
Andrea
andrea_c.ExcelForum
00giovedì 11 maggio 2017 15:13
Ciao,

avrei bisogno di AIUTO per chiudere l'ultimo punto. Qualcuno sa aiutarmi?

Grazie in anticipo!

Andrea
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 10:39.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com