Quota:
Inviato da derekk
....
2) è possibile far partire la macro all'apertura del file (senza cliccare sul tasto della macro?)
|
si basta che metti il codice nel foglio (foglio 1 di ottobre.xls) nell'evento activate e ogni volta che attivi il foglio1 parte la macro
per il resto cambia il codice con questo
Codice:
Sub prova1()
cart = "C:\Users\User\Desktop\" '
nomeFgl = "Foglio1" 'foglio di origine da cui prelevare i dati
nomeFl = ActiveSheet.Cells(2, 1) 'nome del file da aprire
r = 3: c = 1
For t = 3 To 15
indi = Chr(64 + c) & r
indi1 = Chr(64 + c + 2) & r
perc = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi).Range("A1").Address(, , xlR1C1)
perc1 = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi1).Range("A1").Address(, , xlR1C1)
Sheets("Foglio1").Cells(r, 1) = ExecuteExcel4Macro(perc)
Sheets("Foglio1").Cells(r, 3) = ExecuteExcel4Macro(perc1)
For x = 14 To 28
indi3 = Chr(64 + x) & r
perc = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi3).Range("A1").Address(, , xlR1C1)
Sheets("Foglio1").Cells(r, x) = ExecuteExcel4Macro(perc)
x = x + 2
Next
x = 30
indi4 = Cells(r, x).Address
perc = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi4).Range("A1").Address(, , xlR1C1)
Sheets("Foglio1").Cells(r, x) = ExecuteExcel4Macro(perc)
For y = 40 To 42 Step 2
indi5 = Cells(r, y).Address
perc = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi5).Range("A1").Address(, , xlR1C1)
Sheets("Foglio1").Cells(r, y) = ExecuteExcel4Macro(perc)
Next
indi6 = Cells(r, 57).Address
perc = "'" & cart & "[" & nomeFl & "]" & nomeFgl & "'!" & Range(indi6).Range("A1").Address(, , xlR1C1)
Sheets("Foglio1").Cells(r, 57) = ExecuteExcel4Macro(perc)
r = r + 3
Next t
End Sub