Sub Macro1()
'elenco anni
'se sono sempre gli stessi
anni = Range("C3:K3")
'se cambiano, ma rimangono sempre sulla riga 3 e sempre sotto "svalutazione crediti" e sempre "DTA" subtio dopo
i = 3
Do While Cells(2, i) <> "DTA"
i = i + 1
trovato = i - 1
Loop
anni = Range(Cells(3, 3), Cells(3, trovato))
'immagino che la struttura sia sempre la stessa quindi se ci sarà una terza caratteristica sarà dopo DTA con gli stessi anni (non come nel file d'esempio)
i = 4 'prima azienda in riga 4, non 5 come nell'esempio
r = 16 'prima riga tabella di arrivo
c = 1 'prima colonna tabella di arrivo
Do While Cells(i, 2) <> "" ' aziende in colonna B non A come nell'esempio la prima cella vuota fa terminare il ciclo
For k = 1 To UBound(anni, 2) 'ciclo sugli anni
Cells(r, c) = Cells(i, 2) 'nome dell'azienda
c = c + 1
Cells(r, c) = anni(1, k) 'anno
c = c + 1
j = 3
Do While Cells(2, j) <> "" ' non so quante variabili esistono, ciclo fino alla prima cella vuota
Cells(r, c) = Cells(i, j + k - 1) 'dato
c = c + 1
j = j + UBound(anni, 2)
Loop
r = r + 1
c = 1
Next
i = i + 1
Loop
End Sub |