Application.ScreenUpdating = False
Application.DisplayAlerts = False 'questa parte elimina i fogli
For i = Sheets.Count To 2 Step -1 'escluso il primo
Sheets(i).Delete 'cioè quello con i valori iniziali
Next 'se non ne hai bisogno
Application.DisplayAlerts = True 'metti l'apostrofo (') all'inizio
c = 1
i = 1 'se i valori non iniziano dalla prima riga devi cambiare c e i
Do While i <= Range("a" & Rows.Count).End(xlUp).Row
If Cells(i, 1) <> Cells(i + 1, 1) Then
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = Cells(c, 1)
'comincia a scrivere da A1 nel foglio nuovo. Per cominiciare da un'altra riga dovrai cambiare A1 e c+1
'con la cella di partenza e il umero di riga Es. A5 e c+5
ActiveSheet.Range("a1:g" & i - c + 1) = Range(Cells(c, 1), Cells(i, 7)).Value
c = i + 1
End If
i = i + 1
Loop
Application.ScreenUpdating = True |