Supponiamo che tu abbia i nominativi nel range a2:a22 e i valori, compresi tra 1 e 10, nel range b2:b22 e che voglia incolonnarli a partire da c (che conterrà i nominativi che hanno valore pari a 1) fino alla colonna l che conterrà i nominativi che hanno valore pari a 10.
Il codice è molto semplice
codice:
Option Base 1
Option Explicit
Sub trasla()
Dim colonna As Variant
Dim cella As Range
Dim ultimariga As Long
colonna = Array("c", "d", "e", "f", "g", "h", "i", "j", "k", "l")
For Each cella In Range("b2:b22")
ultimariga = Range(colonna(cella) & "65536").End(xlUp).Row
Range(colonna(cella) & ultimariga + 1) = cella.Offset(0, -1)
Next cella
End Sub
Modifica solo il range.