DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Sub Sayfalara_Dagit()
Dim Sl As Worksheet, d As Object, i As Long, a1
Dim deg As String, son As Long, son1 As Long, son2 As Long
Set d = CreateObject("Scripting.Dictionary")
Set Sl = Sheets("Liste")
son = Sl.Cells(Rows.Count, "C").End(xlUp).Row
Application.ScreenUpdating = False
For i = 2 To son
deg = Sl.Cells(i, "C")
If Not d.exists(deg) Then
d.Add deg, Nothing
End If
Next i
a1 = d.keys
For i = 0 To d.Count - 1
If Not varmi("" & a1(i) & "") Then
Sheets.Add After:=Worksheets(Worksheets.Count)
ActiveSheet.Name = a1(i)
End If
Sl.Range("A1:D" & son).AutoFilter Field:=3, Criteria1:=a1(i)
With Sheets("" & a1(i) & "")
.Cells.Clear
son1 = Sl.Cells(Rows.Count, "C").End(xlUp).Row
Sl.Range("A1:D" & son1).Copy .Range("A1")
son2 = .Cells(Rows.Count, "C").End(xlUp).Row
.Range("C" & son2 + 1) = "Toplam"
.Range("D" & son2 + 1) = "=sum(D2:D" & son2 & ")"
.Range("A:D").EntireColumn.AutoFit
End With
Next i
Sl.Range("A1:D" & son).AutoFilter
Application.ScreenUpdating = True
End Sub
' ............... Sayfa kontrolu .............................
Function varmi(adi As String) As Boolean
On Error Resume Next
varmi = CBool(Len(Worksheets(adi).Name) > 0)
End Function