Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[Excel]-VBA-macro per aggiornamento di una dashboard

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

[Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 04/11/11 10:30

Ciao a tutti,

ringrazio anticipatamente chi mi darà supporto e chi ci proverà :)

Sicuramente spiegarmi non sarà facilissimo (anche perchè sono abbastanza novello), ma ci provo.

A cadenze settimanali estraggo da una dashboard un file .csv con una serie di colonne (I colonne) e molte righe (oltre 13000 in continua espansione). Ad ogni estrazione le righe si aggiungono alle precedenti, ma non necessariamente rispettano l'ordine. Io copio questi dati su un file excel e nelle colonne adiacenti eseguo dei calcoli.

Quello che vorrei fare è questo.

Creare una macro che:
- all'apertura del file mi dicesse quale file .csv voglio importare
- copiare le celle del .csv nel file excel
- fare tutti i calcoli

nb. la maggior parte dei calcoli sono molto semplici, uno solo è quello che mi dà fastidio, ossia un cerca.verticale, ma andiamo per gradi...

Ho cercato di essere sintetico, se qualcosa non è chiara, sarò più preciso
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Sponsor
 

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 04/11/11 12:33

Ciao Zip87 e benvenuto nel Forum

Quello che chiedi è fattibile ma vorrei avere qualche informazione in più
i file .csv sono contenuti in una unica cartella, giusto?
Perché vuoi scegliere il file da importare?
I file csv sono cronologici?
ogni file csv contiene anche i dati dei giorni o estrazioni precedenti?
In questo caso importi accodando solo i nuovi dati?

Sarebbe, in ogni caso, opportuno che inviassi un file csv (mascherando i dati sensibili)
e il foglio di excel con alcuni dati importati nonché le formule che utilizzi e che sicuramente dovranno adattarsi alle nuove righe
(è importante che i dati del file.xls che invii corrispondano a quelli nel file.csv)

Ti ricordo che per inviare i file devi aver postato almeno tre messaggi
poi segui la procedura descritta in questo link

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 04/11/11 15:20

Grazie del benvenuto, e grazie per il supporto.

Non voglio spammare, quindi cerco di raggiungere legalmente i 3 messaggi per inviare i file.
I file csv vengono estratti settimanalmente e possono essere posizionati anche in un'unica cartella.
Voglio scegliere il file da importare così al termine della settimana x posso importare il csv della settimana x+1.
Si i file sono cronologici proprio perchè estratti settimanalmente.
Si ogni file csv è incluso nel successivo, quindi alla settimana x+1 c'è tutto quello della settimana x più altri dati nuovi;
normalmente dato che può essere modificato l'ordine dei dati nel csv durante l'estrazione, non accodo, ma incollo direttamente tutte le celle del csv sopra a quelle già esistenti e manualmente estendo le formule.

Intanto modifico i file e li preparo per allegarli.
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 04/11/11 15:58

Adesso cerco di spiegare dettagliatamente quello che faccio (più o meno manualmente) e poi allego i file che ho preparato.

Estraggo il csv da un database, come si può vedere è in buone condizioni, non si deve manipolare, a parte due colonne che non servono e che devono essere eliminate (H;J).

Come ho detto copio le celle e le incollo nel file excel (foglio 2), poi estendo le celle contenenti le formule.
Nel file excel ci sono tre fogli:
-2 foglio principale
-3 foglio per una pivot
-1 lo uso per un cerca verticale nel foglio 2 alla colonna U
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 04/11/11 17:37

Non trovo un tasto edit. Volevo dire che purtroppo non sempre tutte le celle delle varie righe sono piene, per vari casi o errori alcune celle possono essere vuote.
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 04/11/11 23:09

c'è una passowrd nel file archivio :?:
se vuoi puoi inviarmela in MP

ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 05/11/11 01:47

evidenzia di fianco a dove ho scritto psw
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 05/11/11 09:52

Ok

Ma il file csv non è originale
perché dovrebbe avere estensione file.csv e non csv.xlsx
preferirei lavorare sull'estensione originale a meno che tu non voglia utilizzare questo file,
in questo caso non potranno mai convivere tanti file nella stessa cartella visto che si dovrebbero chiamare tutti csv.xlsx
Inoltre i dati del file.csv dovrebbero accodarsi nel foglio "2" ?

Fai sapere
ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 05/11/11 23:23

Prova questa macro
funziona tutto ma potresti avere un problema di date (sys americano, europeo)
ma potrebbe anche funzionare

Codice: Seleziona tutto
Sub ScegliFile()
Worksheets("2").Select
NomeFile = ThisWorkbook.Name
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Filters.Clear
.Filters.Add "All files", "*.*"
.Filters.Add "File Csv", "*.csv", 1
.Show
If .SelectedItems.Count = 0 Then
MsgBox ("Nessuna voce selezionata, procedura annullata")
GoTo Esci
End If
For I = 1 To .SelectedItems.Count
FullNome = .SelectedItems(I)

    Workbooks.Open Filename:=FullNome
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 1), TrailingMinusNumbers:=True
    Columns("J:J").Select
    Selection.Delete Shift:=xlToLeft
    Columns("H:H").Select
    Selection.Delete Shift:=xlToLeft
    Columns("A:I").Select
    Selection.Copy
    Windows(NomeFile).Activate
    Columns("A:A").Select
    ActiveSheet.Paste
    Range("A2").Select
    Ncsv = Mid(FullNome, InStrRev(FullNome, "\") + 1, Len(FullNome))
    Application.DisplayAlerts = False
    Workbooks(Ncsv).Close SaveChanges:=False
    Application.DisplayAlerts = True
Next I
End With
Esci:
End Sub


Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 05/11/11 23:44

Flash che dire, è perfetto! :eeh:

non vorrei abusare di gentilezza, in realtà quello che vorrei è imparare sul mio problema, per questo passo al quesito 2.

Per quanto riguarda le formule nelle colonne adiacenti, come posso fare ad applicarle, nelle rispettive colonne, fino alla ultima riga (non ultima cella perchè non tutte le righe hanno le celle con dati) del csv inserito?
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 05/11/11 23:57

Ops!
ho dimenticato la cosa più semplice
allora alla fine della macro (dove indicato) inserisci le righe che posto qui

Codice: Seleziona tutto
End With   '<<<< Esistente

'<<<< inserire queste righe qui
Uri = Range("J" & Rows.Count).End(xlUp).Row
URF = Range("A" & Rows.Count).End(xlUp).Row
        Range("J" & Uri & ":V" & URI).Select
    Selection.AutoFill Destination:=Range("J" & Uri & ":V" & URF), Type:=xlFillDefault
     Range("J7:V" & URF).Select
    Range("A1").Select
'<<<< Fine righe da inserire

Esci:     '<<<< Esistente
End Sub   '<<<< Esistente Fine macro


Ciao

EDIT: Modificata macro ore 00:10 (corretta riga codice)
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 06/11/11 10:55

Grazie infinite, flash.

Andiamo avanti, ma questa volta sono minuzie. Quando scelgo di caricare il csv, potrebbe accadere che venga caricato uno con meno righe di quello precedentemente caricato, il risultato è che il numero di righe delle colonne con le formule è uguale al numero di righe del csv con più righe.

Posso dare un comando di clear (ad esempio dalla riga tre) sulle colonne di formula oppure c'è un modo più carino?

Poi, per applicare un filtro a tutte le colonne una volta eseguito tutto il codice, come posso fare?

Ho altri problemini, non linciatemi:

- Devo eseguire un cerca verticale su una colonna del foglio "2", per farlo ho bisogno di creare una pivot. Ho registrato/modificato una macro che copia i dati della pivot, li incolla e formatta come tabella, poi aggiunge una colonna. Questa tabella (tutta) è il secondo argomento del cerca.verticale. Qui ho due problemi:
-essendo abbastanza incapace :oops: , non sono riuscito a farmi creare una tabella dinamica delle stesse dimensioni della pivot e ho messo, nella macro, un range abbastanza grande (cosa molto brutta e rozza)
- cambiando il contenuto della tabella, il cerca.verticale mi dà risultato #RIF! perchè la forumula del cerca verticale viene aggiornata prima che la tabella venga creata.

Poi ho un ultimo problema (credo) :-?

Ho altre pivot dove purtroppo al fianco devo fare dei calcoli e allo stesso modo non riesco ad estenderli fino all'ultima cella della pivot, motivo per cui devo incollare la formula su un range molto più ampio, in modo che ad ogni aggiornamento della pivot e relativo ampliamento ci sia al fianco una cella con la formula inserita.

Grazie infinite
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 06/11/11 11:16

La cosa più semplice è appunto cancellare il range("I3:V" & URI).clearcontents e ricalcolare URI (o selezionare la riga ormai nota: range di riga2)
Altrimenti dopo aver calcolato le rige URI e URF mettere la condizione se URI < URF fa quello che fa adesso altrimenti cancella il range da URF+1 a URI
----
Il filtro lo attivi (o disattivi) ogni volta che la macro processa questo codice
Codice: Seleziona tutto
    Range("A1").AutoFilter

codice da inserire nel punto voluto della macro

zip 87 ha scritto:Devo eseguire un cerca verticale su una colonna del foglio "2", per farlo ho bisogno di creare una pivot.

:?:

zip 87 ha scritto:cambiando il contenuto della tabella, il cerca.verticale mi dà risultato #RIF! perchè la forumula del cerca verticale viene aggiornata prima che la tabella venga creata.


Puoi fermare il calcolo prima della variazione tabella e ripristinare il calcolo automatico a fine compilazione tabella

Codice: Seleziona tutto
Application.Calculation = xlManual

'...<<<< Tua macro

Application.Calculation = xlCalculationAutomatic


Per l'ultimo quesito (copiare le formule fino dove arriva la tabella)
Vedi il punto 1 di questo post (URI e URF)

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 06/11/11 11:33

mi spiegheresti questo listato così lo riapplico :oops:

Codice: Seleziona tutto
Uri = Range("J" & Rows.Count).End(xlUp).Row
URF = Range("A" & Rows.Count).End(xlUp).Row
        Range("J" & Uri & ":V" & URI).Select
    Selection.AutoFill Destination:=Range("J" & Uri & ":V" & URF), Type:=xlFillDefault
     Range("J7:V" & URF).Select
    Range("A1").Select


grazie mille
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 06/11/11 13:25

Cerco di essere più chiaro

Grazie infinite, flash.

Andiamo avanti, ma questa volta sono minuzie. Quando scelgo di caricare il csv, potrebbe accadere che venga caricato uno con meno righe di quello precedentemente caricato, il risultato è che il numero di righe delle colonne con le formule è uguale al numero di righe del csv con più righe.

Posso dare un comando di clear (ad esempio dalla riga tre) sulle colonne di formula oppure c'è un modo più carino?

Poi, per applicare un filtro a tutte le colonne una volta eseguito tutto il codice, come posso fare?


RISOLTI

Ho altri problemini, non linciatemi:

- Devo eseguire un cerca verticale su una colonna del foglio "2", per farlo ho bisogno di creare una pivot (nel senso che mi servono i dati che ottengo dalla pivot). Ho registrato/modificato una macro che copia i dati della pivot, li incolla e formatta come tabella, poi aggiunge una colonna.

Codice: Seleziona tutto
Sub codifica_pallet()
'
' codifica_pallet Macro

    Sheets("codifica_pallet").Visible = True
    Sheets("codifica_pallet").Select
    Columns("D:F").Select
    Selection.Delete Shift:=xlToLeft
    Range("A2:B2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Range("D1").Select
    ActiveSheet.Paste
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$D$1:$F$13268"), , xlNo).Name = _
        "Tabella1"
    Range("Tabella1[#All]").Select
    ActiveSheet.ListObjects("Tabella1").TableStyle = "TableStyleMedium2"
    ActiveWindow.SmallScroll Down:=-9
    Range("F5").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(Tabella1[[#This Row],[Colonna2]]<10,""d"",IF(Tabella1[[#This Row],[Colonna2]]<50,""c"",IF(Tabella1[[#This Row],[Colonna2]]<100,""b"",""a"")))"
    Sheets("codifica_pallet").Visible = False
End Sub


Questa tabella (tutta) è il secondo argomento del cerca.verticale. Qui ho due problemi:
-essendo abbastanza incapace , non sono riuscito a farmi creare una tabella dinamica delle stesse dimensioni della pivot e ho messo, nella macro, un range abbastanza grande (cosa molto brutta e rozza)
- cambiando il contenuto della tabella, il cerca.verticale mi dà risultato #RIF! perchè la forumula del cerca verticale viene aggiornata prima che la tabella venga creata.

Codice: Seleziona tutto
Sub Macro2()
'
' Macro2 Macro
'
    Sheets("dashboard").Select
    Range("U2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.ClearContents
    ActiveCell.Formula = "=VLOOKUP(D2,Tabella1[#All],3)"
    Range("U2").Select
    Selection.AutoFill Destination:=Range("U2:U40502"), Type:=xlFillDefault
    End Sub


Codice: Seleziona tutto
Private Sub Workbook_Open()
ActiveWorkbook.RefreshAll
Modulo1.prep_pallet
Modulo1.codifica_pallet
End Sub

Poi ho un ultimo problema (credo)

Ho altre pivot dove purtroppo al fianco devo fare dei calcoli e allo stesso modo non riesco ad estenderli fino all'ultima cella della pivot, motivo per cui devo incollare la formula su un range molto più ampio, in modo che ad ogni aggiornamento della pivot e relativo ampliamento ci sia al fianco una cella con la formula inserita.

Grazie infinite
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 06/11/11 23:05

zip 87 ha scritto:mi spiegheresti questo listato così lo riapplico :oops:

Codice: Seleziona tutto
Uri = Range("J" & Rows.Count).End(xlUp).Row
URF = Range("A" & Rows.Count).End(xlUp).Row
        Range("J" & Uri & ":V" & URI).Select
    Selection.AutoFill Destination:=Range("J" & Uri & ":V" & URF), Type:=xlFillDefault
     Range("J7:V" & URF).Select
    Range("A1").Select


grazie mille



Codice: Seleziona tutto
Uri = Range("J" & Rows.Count).End(xlUp).Row '<<< calcola le righe totali (con dati) in J
URF = Range("A" & Rows.Count).End(xlUp).Row '<<< calcola le righe totali (con dati) in A
        Range("J" & Uri & ":V" & URI).Select  '<<<< seleziona l'ultima riga con formule (da J a V)
    Selection.AutoFill Destination:=Range("J" & Uri & ":V" & URF), Type:=xlFillDefault  '<<<< Trascina la riga selezionata fino alla riga URF che corrisponde all'ultima riga dei dati aggiunti
     Range("J7:V" & URF).Select  '<<<< completa la copia
    Range("A1").Select   '<<<< seleziona la cella A1


Per gli altri due quesiti penso di averti risposto nel post precedente :aaah
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 07/11/11 00:07

Scusami flash se ti ho fatto infuriare, non era mia intenzione.

Ci ho provato e riprovato, bene o male avevo interpretato il codice, ma ottengo sempre errori, penso dovuti alle sintassi, ma evidentemente non solo.

Mi rendo conto di essere piombato qui e può sembrare che io pensi che qualcosa mi sia dovuto, ma non è così.

Flash ti ringrazio molto per il supporto dato,

Saluti
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 07/11/11 01:08

Avendo spiegato il significato e di come si ottengono i valori delle variabili URI e URF
(puoi mettere qualsiasi altro nome es. Pippo1 e Pippo2, uso URI per dire Ultima Riga Iniziale e URF ... Finale)

Per creare la condizione non devi far altro che usare questi codici

Codice: Seleziona tutto
Uri = Range("J" & Rows.Count).End(xlUp).Row   '<<<< esistente
URF = Range("A" & Rows.Count).End(xlUp).Row  '<<<< esistente
IF  URI < URF then    '<<<<< aggiungere
' codice precedente
        Range("J" & Uri & ":V" & URI).Select
    Selection.AutoFill Destination:=Range("J" & Uri & ":V" & URF), Type:=xlFillDefault
     Range("J7:V" & URF).Select
    Range("A1").Select
'codice precedente
else  '   <<<<< aggiungere
 Range("J" & UrF+1 & ":V" & URI).ClearContents  ' aggiungere
endif  '   <<<<< aggiungere

---------------------------
Per quanto riguarda il problema formula #RIF!
Codice: Seleziona tutto
'Sub TuaMacro
Application.Calculation = xlManual  '<<<< aggiungere, ferma il calcolo automatico

'...<<<< tutto il codice della tua macro

Application.Calculation = xlCalculationAutomatic  '<<<<<< aggiungere, ripristina il calcolo automatico
End Sub ' fine della tua macro


Ciao

P.S. se hai difficoltà o poca pratica nell'uso del Vba ti consiglio di razionalizzare ponendo un quesito alla volta altrimenti oltre ad aumentare la confusione a te stesso non ci fai capire cosa hai risolto e cosa non hai risolto perché riproponi più volte gli stessi quesiti.
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi zip 87 » 07/11/11 08:07

è giusto, retry.

Ho un problema che mi sta facendo :x

Avevo creato questa macro, che devo modificare:

Codice: Seleziona tutto
Sub codifica_pallet()

    Sheets("codifica_pallet").Visible = True
    Sheets("codifica_pallet").Select
    Columns("D:F").Select
    Selection.Delete Shift:=xlToLeft
    Range("A2:B2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy

<<< mi consigli di copiare interamente le colonne oppure conviene identificare uri e urf? In questo caso visto che le colonne D:F sono vuote, serve uri?

    Range("D1").Select
    ActiveSheet.Paste
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$D$1:$F$13268"), , xlNo).Name = _
        "Tabella1"

<<< qui ho il pbm più grande perchè devo formattare il range dalla prima riga delle colonne D:F fino all'ultima riga incollata precedentemente, ma provando uri e urf ottengo sempre errori in range

    Range("Tabella1[#All]").Select
    ActiveSheet.ListObjects("Tabella1").TableStyle = "TableStyleMedium2"
    ActiveWindow.SmallScroll Down:=-9
    Range("F2").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(Tabella1[[#This Row],[Colonna2]]<10,""d"",IF(Tabella1[[#This Row],[Colonna2]]<50,""c"",IF(Tabella1[[#This Row],[Colonna2]]<100,""b"",""a"")))"

<<< qui non dovrebbero esserci problemi perchè applica la formula fino all'ultima riga formattata come tabella (correggimi se sbaglio)

    Sheets("codifica_pallet").Visible = False
End Sub
zip 87
Utente Junior
 
Post: 52
Iscritto il: 04/11/11 10:17

Re: [Excel]-VBA-macro per aggiornamento di una dashboard

Postdi Flash30005 » 07/11/11 10:12

Ehm
penso che il problema delle formule a questo punto rimanga perché excel al momento che togli il riferimento di una formula (cancellando una colonna) fornirà errore.
Ti consigliere, se possibile, di non cancellare le colonne ma nascondere quelle non necessarie.
Di copiare i dati di intere colonne, quindi al posto di
Codice: Seleziona tutto
  Range("A2:B2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Range("D1").Select
    ActiveSheet.Paste

Con
Codice: Seleziona tutto
    Columns("A:B").Copy Destination:=Columns("D:D")


Oppure reinserire le formule corrette attraverso il VBA
come vedo che hai fatto con il terzo gruppo di righe-codice della tua macro
(togli questa riga ActiveWindow.SmallScroll Down:=-9 è lo sroll della pagina e non serve)

URI e URF devono calcolare rispettivamente le righe delle formule e dei dati
pertanto provvederai ad adattere ad ognuno la colonna di riferimento
Io non so dove hai i dati e dove le formule

Ciao
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "[Excel]-VBA-macro per aggiornamento di una dashboard":


Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti