• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

tablodaki verileri sınıflandırmak

Katılım
30 Eylül 2010
Mesajlar
68
Excel Vers. ve Dili
2007 türkçe
arkadaşlar ekteki dosyayı örnek amaçlı ekledim onun çok daha karmaşığı ile uğraşiyorum. kısaca yapmak istediğim veri tabanından tablo çektim tabloda her satırda kişi adı soyadı, şehiri ilçesi gibi bilgiler var. bunları şehirlerine göre sayfalara ayırmak istiyorum.
bunu nasıl yapabilirim?
 

Ekli dosyalar

En Hızlı ve en güzel yolu Özet Tablo Kullanmaktır. 82 Sayfaya ayırmak yerine Tek sayfada görebiliyosun.
 
pivot tabloyu kullanmayı da çok iyi bilmiyorum.

Konuyla İlgili olarak forumda arayabilirsiniz.

Ben sizin için ek yaptım veriyi girdikten sonra pivot tablo üzerinde veri-yenile yaparak veri güncellenecektir yada he açılışta.

Özet tablo kısmında adı üstüne gelerek alan ayarlarından hiçbirini seçerseniz liste şeklinde verecektir istediğinizi.

Bu arada aklıma bişey geldi eğer tek bir seferlik ayıracaksanız Gelişmiş süz de kullana bilirsiniz. ama sürekli veri girilecekse kesinlikle özet tablo yada makro
 
arkadaşlar ekteki dosyayı örnek amaçlı ekledim onun çok daha karmaşığı ile uğraşiyorum. kısaca yapmak istediğim veri tabanından tablo çektim tabloda her satırda kişi adı soyadı, şehiri ilçesi gibi bilgiler var. bunları şehirlerine göre sayfalara ayırmak istiyorum.
bunu nasıl yapabilirim?

Merhaba,

Alternatif olsun. Module kopyalayıp çalıştırın.

Kod:
Sub SayfalaraAktar()
 
    Dim j As Integer, i As Long, sayfa As String, son As Long
 
    Application.ScreenUpdating = False
 
    Application.DisplayAlerts = False
    For j = Worksheets.Count To 1 Step -1
        With Sheets(j)
            If .Name <> "veri" Then
                .Delete
            End If
        End With
    Next j
    Application.DisplayAlerts = True
 
    With Sheets("veri")
        For i = 2 To .Cells(Rows.Count, "D").End(xlUp).Row
            If Cells(i, "D") <> "" Then
               sayfa = Trim(.Cells(i, "D"))
               If Not varmi(sayfa) Then
                   Sheets.Add After:=Worksheets(Worksheets.Count)
                   ActiveSheet.Name = sayfa
                   .Select
               End If
               .Range("B1:E1").Copy Sheets(sayfa).Range("B2")
                son = Sheets(sayfa).Cells(Rows.Count, "B").End(xlUp).Row + 1
               .Range("B" & i & ":E" & i).Copy Sheets(sayfa).Range("B" & son)
                Sheets(sayfa).Range("B:E").EntireColumn.AutoFit
            End If
        Next i
    End With
 
    Application.ScreenUpdating = True
 
End Sub
 
Function varmi(adi As String) As Boolean
    On Error Resume Next
    varmi = CBool(Len(Worksheets(adi).Name) > 0)
End Function
.
 
Geri
Üst