• DİKKAT

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

büyük alanda süz küçük alana yapıştır

Katılım
26 Kasım 2006
Mesajlar
234
Excel Vers. ve Dili
2010-2013 Türkçe
Kod:
Sub aktar()
Application.ScreenUpdating = False
samet = Sheets("CekiListesi").Range("D9").Value
Sheets("CekiListesi").Select
Range("C13:G37").Select
Selection.ClearContents
Range("C13").Select
Sheets("veri").Select
Range("A1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$w$37").AutoFilter Field:=1, Criteria1:=samet
Range("[COLOR="red"]j2:j37[/COLOR]").Copy Sheets("CekiListesi").Range("c13")
Range("[COLOR="Red"]w2:w37[/COLOR]").Copy Sheets("CekiListesi").Range("d13")
Range("[COLOR="red"]d2:d37[/COLOR]").Copy Sheets("CekiListesi").Range("e13")
Range("[COLOR="red"]e2:e37[/COLOR]").Copy Sheets("CekiListesi").Range("f13")
Range("[COLOR="red"]f2:f37[/COLOR]").Copy Sheets("CekiListesi").Range("g13")
ActiveSheet.Range("$A$1:$w$37").AutoFilter Field:=1
Selection.AutoFilter
Application.ScreenUpdating = True
End Sub

Arkadaşlar bu kodun kırmızı olarak işaretlediğim kısımlarını değiştirmem gerekiyor.

Yapmak istediğim yüzlerce satırdan oluşan veri sekmesinden D9 hücresindeki veriye göre süzme işlemi yapıp süzülen değerleri CekiListesi sekmesindeki ilgili sütunun 13.ve 44. satır aralığına yapıştırmak.
 
Aşağıdaki kodda Field:=1 yazan kısım süzülecek alanın sütun numarası gösterir siz D sütununu süzmek istiyorsanız bu alanı Field:=4 olarak değiştirin.

ActiveSheet.Range("$A$1:$w$37").AutoFilter Field:=1, Criteria1:=samet
 
Hocam süzme işlemi D sununda değil, "A" Sutununda yapılacak onda sorun yok.
Benim sorunum süzüldükten sonra kırmızı olarak işaretlediğim kodlardaki j37,w37,d37,e37,f37
kısımları onlarıda şimdilik j37000,w37000,d37000...... olarak değiştirdim.
bu şekildede kod çalıştı ama daha kolay bir yolu olmalı diye düşünüyorum.
 
Merhaba,

Kırmızı bölümlerden amacınız alanı dinamik yapmaksa son satırı bulan bir kod eklersiniz. Bu değişkeni kırmızı bölümlere uyarlarsınız. Bu şekilde dinamik bir alan elde edersiniz.

Kod:
Son = Cells(Rows.Count, 1).End(3).Row
Range("J2:J" & Son).Copy Sheets("CekiListesi").Range("C13")

Diğer satırları da bu şekilde siz düzenlersiniz.
 
Sanırım aradığım kod bu, Çalışma kitabım iş yerimde olduğu için yarın deneyeceğim.

Teşekkür Ederim.
 
Geri
Üst