Option Explicit
Sub CopiaMesi3()
Dim F1 As Worksheet, F2 As Worksheet, F3 As Worksheet, F4 As Worksheet, F5 As Worksheet, F6 As Worksheet, F7 As Worksheet, F8 As Worksheet, F9 As Worksheet, F10 As Worksheet, F11 As Worksheet, F12 As Worksheet, FF As Worksheet
Set F1 = Sheets("Gennaio")
F1.Range("d3:Ah23").ClearContents
Set F2 = Sheets("Febbraio")
F2.Range("d3:Ah23").ClearContents
Set F3 = Sheets("Marzo")
F3.Range("d3:Ah23").ClearContents
Set F4 = Sheets("Aprile")
F4.Range("d3:Ah23").ClearContents
Set F5 = Sheets("Maggio")
F5.Range("d3:Ah23").ClearContents
Set F6 = Sheets("Giugno")
F6.Range("d3:Ah23").ClearContents
Set F7 = Sheets("Luglio")
F7.Range("d3:Ah23").ClearContents
Set F8 = Sheets("Agosto")
F8.Range("d3:Ah23").ClearContents
Set F9 = Sheets("Settembre")
F9.Range("d3:Ah23").ClearContents
Set F10 = Sheets("Ottobre")
F10.Range("d3:Ah23").ClearContents
Set F11 = Sheets("Novembre")
F11.Range("d3:Ah23").ClearContents
Set F12 = Sheets("Dicembre")
F12.Range("d3:Ah23").ClearContents
Set FF = Sheets("Inserimento_dati")
Dim x As Long, Data, Mese As Long, Giorni As Long, Y As Long, YY As Long, Col1 As Long, Col2 As Long, Col As Long
Dim Files As String
Application.ScreenUpdating = False
FF.Activate
Y = 4
Data = "29/2/" & Year(F1.Cells(2, 2))
If IsDate(Data) Then
Giorni = 366
Else
Giorni = 365
End If
If Giorni = 366 Then
'gennaio
FF.Range(FF.Cells(6, 4), FF.Cells(20, 34)).Copy
F1.Activate
F1.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F1.Cells(3, 3 + x) = FF.Cells(3, Y)
F1.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'febbraio
FF.Range(FF.Cells(6, 35), FF.Cells(20, 63)).Copy
F2.Activate
F2.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 28
F2.Cells(3, 3 + x) = FF.Cells(3, Y)
F2.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'marzo
FF.Range(FF.Cells(6, 64), FF.Cells(20, 94)).Copy
F3.Activate
F3.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F3.Cells(3, 3 + x) = FF.Cells(3, Y)
F3.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'aprile
FF.Range(FF.Cells(6, 95), FF.Cells(20, 124)).Copy
F4.Activate
F4.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F4.Cells(3, 3 + x) = FF.Cells(3, Y)
F4.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'maggio
FF.Range(FF.Cells(6, 125), FF.Cells(20, 155)).Copy
F5.Activate
F5.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F5.Cells(3, 3 + x) = FF.Cells(3, Y)
F5.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'giugno
FF.Range(FF.Cells(6, 156), FF.Cells(20, 185)).Copy
F6.Activate
F6.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F6.Cells(3, 3 + x) = FF.Cells(3, Y)
F6.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'luglio
FF.Range(FF.Cells(6, 186), FF.Cells(20, 216)).Copy
F7.Activate
F7.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F7.Cells(3, 3 + x) = FF.Cells(3, Y)
F7.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
FF.Activate
'agosto
FF.Range(FF.Cells(6, 217), FF.Cells(20, 247)).Copy
F8.Activate
F8.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F8.Cells(3, 3 + x) = FF.Cells(3, Y)
F8.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Settembre
FF.Range(FF.Cells(6, 248), FF.Cells(20, 277)).Copy
F9.Activate
F9.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F9.Cells(3, 3 + x) = FF.Cells(3, Y)
F9.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'ottobre
FF.Range(FF.Cells(6, 278), FF.Cells(20, 308)).Copy
F10.Activate
F10.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F10.Cells(3, 3 + x) = FF.Cells(3, Y)
F10.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Novembre
FF.Range(FF.Cells(6, 309), FF.Cells(20, 338)).Copy
F11.Activate
F11.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F11.Cells(3, 3 + x) = FF.Cells(3, Y)
F11.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Dicembre
FF.Range(FF.Cells(6, 339), FF.Cells(20, 369)).Copy
F12.Activate
F12.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F12.Cells(3, 3 + x) = FF.Cells(3, Y)
F12.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
Else
FF.Activate
'gennaio
FF.Range(FF.Cells(6, 4), FF.Cells(20, 34)).Copy
F1.Activate
F1.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F1.Cells(3, 3 + x) = FF.Cells(3, Y)
F1.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'febbraio
FF.Range(FF.Cells(6, 35), FF.Cells(20, 62)).Copy
F2.Activate
F2.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 28
F2.Cells(3, 3 + x) = FF.Cells(3, Y)
F2.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'marzo
FF.Range(FF.Cells(6, 63), FF.Cells(20, 93)).Copy
F3.Activate
F3.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F3.Cells(3, 3 + x) = FF.Cells(3, Y)
F3.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'aprile
FF.Range(FF.Cells(6, 94), FF.Cells(20, 123)).Copy
F4.Activate
F4.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F4.Cells(3, 3 + x) = FF.Cells(3, Y)
F4.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'maggio
FF.Range(FF.Cells(6, 124), FF.Cells(20, 154)).Copy
F5.Activate
F5.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F5.Cells(3, 3 + x) = FF.Cells(3, Y)
F5.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'giugno
FF.Range(FF.Cells(6, 155), FF.Cells(20, 184)).Copy
F6.Activate
F6.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F6.Cells(3, 3 + x) = FF.Cells(3, Y)
F6.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'luglio
FF.Range(FF.Cells(6, 185), FF.Cells(20, 215)).Copy
F7.Activate
F7.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F7.Cells(3, 3 + x) = FF.Cells(3, Y)
F7.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
FF.Activate
'agosto
FF.Range(FF.Cells(6, 216), FF.Cells(20, 246)).Copy
F8.Activate
F8.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F8.Cells(3, 3 + x) = FF.Cells(3, Y)
F8.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Settembre
FF.Range(FF.Cells(6, 247), FF.Cells(20, 276)).Copy
F9.Activate
F9.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F9.Cells(3, 3 + x) = FF.Cells(3, Y)
F9.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'ottobre
FF.Range(FF.Cells(6, 277), FF.Cells(20, 307)).Copy
F10.Activate
F10.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F10.Cells(3, 3 + x) = FF.Cells(3, Y)
F10.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Novembre
FF.Range(FF.Cells(6, 308), FF.Cells(20, 337)).Copy
F11.Activate
F11.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 30
F11.Cells(3, 3 + x) = FF.Cells(3, Y)
F11.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
FF.Activate
'Dicembre
FF.Range(FF.Cells(6, 338), FF.Cells(20, 368)).Copy
F12.Activate
F12.Range("D6").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
For x = 1 To 31
F12.Cells(3, 3 + x) = FF.Cells(3, Y)
F12.Cells(4, 3 + x) = FF.Cells(4, Y)
Y = Y + 1
Next x
Files = "C:" & Cells(3, 2).Value & Year(FF.Cells(2, 4)) & ".xls" 'da cambiare la cartella
ActiveSheet.Copy
ActiveSheet.SaveAs Filename:=Files, FileFormat:=xlExcel8
End If
MsgBox ("Fatto")
FF.Activate
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub |