6 Ağustos 2013 Salı

Excel 2010 ile veri satırlarını (Rows) sayfalara (Sheet) bölmek.

Merhaba,

Bugün ihtiyacım olan ve internette arayıp bularak uyguladığım bir kodu sizinle paylaşmak istiyorum. 

Kod parçamız çok fazla satırı bulunan bir Excel Kitabını (Sheet) parçalara bölerek farklı Kitaplara aktarmaktadır. Hem de bizim istediğimiz satır sayısı kadarıyla.

Hemen konuya geçersem;

Ben Excel 2010 versiyonunda bu işin nasıl yapılacağını anlatacağım. Öncelikle "Developer Ribbon" a ihtiyacımız olacak. Çünkü Visual Basic kodu yazabilmemiz için bu "Ribbon-Toolbar" bize gerekiyor. 

İlk aşamada bu Toolbar görünmemektedir gösterebilmek için, 

File -> Options -> Customize Ribbon -> Developer  onay kutusunu işaretleyin. Sağ taraftaki Listbox içerisinde seçilmemiş şekilde olmalı.

Gelelim Kodumuzu ekleyeceğimiz bölüme.

Developer onay kutusunu işaretlediğimizde ve "Tamam" diyerek Excel'e eklediğimizde içerisinde "İnsert (Ekle)" diye bir ikon göreceğiz. Buradan bir Activex Control -> Command Button ekleyeceğiz. Ve "Design Mode" ikonuna tıklayıp tasarım görünümüne geçeceğiz. Burdan sonra Excel içerisine eklediğimiz butonu çift tıklayarak içerisine aşağıdaki kodu yazıyoruz.

Private Sub CommandButton1_Click()
Dim ToplamKayitSayisi, c, t, d As Integer
ToplamKayitSayisi = 20
    Dim SayfaKayitSayisi As Long
    SayfaKayitSayisi = 10
    AcilacakSayfa = ToplamKayitSayisi / SayfaKayitSayisi
    For i = 1 To AcilacakSayfa
        Sheets.Add
        ActiveSheet.Name = "Data" & i
    Next
    c = 2
    t = 2 + SayfaKayitSayisi
    For i = 1 To AcilacakSayfa
        d = d + 1
        Sheets("Sheet1").Rows(c & ":" & t).Copy Sheets("Data" & d).[a2]
        c = t + 1
        t = SayfaKayitSayisi + t + 1
    Next
End Sub


Artık test etmek için Visual Basic kod penceresinden çıkmamız ve Excel 'e geçmemiz gerekiyor. Bunun için de sol üst köşedeki "Excel" ikonuna tıklıyoruz. Excel'e geçtiğimizde "Design Mode" tan çıkmak içinde "Design Mode" ikonuna tıklıyoruz. Şimdi artık Butonumuza basabilir ve sonucu görebiliriz.

Kolay gelsin.

Hiç yorum yok:

Yorum Gönder