Hücre filitreleme

Katılım
9 Ağustos 2012
Mesajlar
30
Excel Vers. ve Dili
Microsoft Office 2010
Altın Üyelik Bitiş Tarihi
09-07-2022
ek tabloya benzer bir veri çalışmam var, bu tabloda SAYFA 1 deki verilerin KALAN sayfada görüntülemesini istiyorum ancak örnek verdiğim veri uzun satırlardan oluşması nedeni ile bunun KALAN sayfasında sadece sıfırdan büyük olanların ve büyükten küçüğe doğru sıralanmasını istiyorum.
yardımlarınızı bekliyorum iyi çalışmalar
 

Ekli dosyalar

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba

Aşağıdaki kodu boş bir modüle yapıştırıp deneyiniz.

Kod:
Sub aktarsirala()

Dim i As Integer, son As Integer

Application.ScreenUpdating = False

Sheets("Sayfa2").Range("A2:B10000").ClearContents
son = Sheets("Sayfa2").Cells(Rows.Count, 1).End(3).Row + 1

    For i = 2 To Sheets("Sayfa1").Cells(Rows.Count, 1).End(3).Row
        If Sheets("Sayfa1").Cells(i, 2).Value > 0 Then
            Sheets("Sayfa2").Cells(son, 1).Value = Sheets("Sayfa1").Cells(i, 1).Value
            Sheets("Sayfa2").Cells(son, 2).Value = Sheets("Sayfa1").Cells(i, 2).Value
            son = son + 1
        End If
    Next
Sheets("Sayfa2").Range("A2:B10000").Sort Sheets("Sayfa2").Range("B2"), Order1:=xlDescending

Application.ScreenUpdating = True

MsgBox "İşlem Tamamlandı"

End Sub
İyi Çalışmalar
 
Katılım
9 Ağustos 2012
Mesajlar
30
Excel Vers. ve Dili
Microsoft Office 2010
Altın Üyelik Bitiş Tarihi
09-07-2022
EMR123
ilginize teşekkür ederim, vermiş olduğunuz formülü örnek tabloya uyguladım istediğim şekilde sonuç verdi ancak uygulayacağım tabloya bir tür uyarlayamadım yani asıl tablom AB sütünlerde olmadığı için ve bilgi yetersizliğimden dolayı başaramadım eklediğim dosyanın bulunduğu hücrelere göre formatı tekrarlarsan memnun olurum.
iyi çalışmalar
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Alternatif olsun.

Veri yığını büyük olduğunda, For...If ..End If...Next yapısıyla verileri koşula göre aktarmak süre alabilir.
Bu nedenle filtre (AC sütununu 0'dan büyük kriterine göre filtreleme) yöntemi daha hızlı sonuç verecektir.
Aktarma sonrasında da büyükten küçüğe sıralama yapılıyor.

Kırmızı işaretlediğim 2 sayısı azalan sıralama anlamına geliyor, artan için onun yerine 1 kullanabilirsiniz.
.
Kod:
[B]Sub aktarsirala()[/B]
Set S1 = Sheets("Sayfa1"): Set S2 = Sheets("Sayfa2")
S2.[W:X].ClearContents
S1.AutoFilterMode = False
S1.[AB2:AB2].[B]AutoFilter[/B] Field:=2, Criteria1:=">0"
[COLOR="Red"]S1.Range("AB2:AC" & S1.Cells(Rows.Count, "AB").End(3).Row).Copy S2.[W9][/COLOR]
[COLOR="Blue"][B]S1.Range("AB2:AC" & S1.Cells(Rows.Count, "AB").End(3).Row).Copy
S2.[W9].PasteSpecial Paste:=xlPasteValues[/B][/COLOR]
S1.[AB2:AB2].AutoFilter Field:=2
S2.Range("W10:X" & Rows.Count).Sort S2.[X10], Order1:=2
MsgBox "İşlem Tamamlandı", vbInformation, "..::.. Ömer BARAN ..::.."
[B]End Sub[/B]
 
Katılım
9 Ağustos 2012
Mesajlar
30
Excel Vers. ve Dili
Microsoft Office 2010
Altın Üyelik Bitiş Tarihi
09-07-2022
Ömer Bey yardımların için teşekür ederim önerdiğin kodlamayı uyguladım sayfa1 deki AB ile AC sabit olmuş olsaydı hatasız işlem gerçekleşiyor ancak AB sabit kalabilir AC ise önceki verilere bağlı olarak sürekli değişken olabiliyor yani örnek tablodaki gibi ilk işlemler uyguladığımda normal işliyor ancak bir iki defa değerleri değiştirdim anda örnekteki gibi hata veriyor,
yardımlarınızı bekliyorum. katkılarınız için teşekkür ederim
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Hem konu açılış mesajındaki örnek belgede ve hem de ikinci eklediğiniz örnek belgede, ilgili hücrelerde formül değil değerler var ve
soru ve açıklamalarınızda da formüllerin varlığından hiç bahsetmemiştiniz.

Malesef forumda sıkça rastladığımız sıkıntı bu.
Soruların gerçek belgeyle aynı yapıda örnek belge üzerinden sorulmaması, gereksiz yazışmalara ve zaman kaybına neden oluyor.

Önceki kod'da kırmızı renklendirdiğim satır yerine mavi renklendirdiğim satırları kullanarak isteğiniz sonuca ulaşılır.
Sayfayı yenileyerek önceki kod cevabımı tekrar kontrol edin.
.
 
Katılım
9 Ağustos 2012
Mesajlar
30
Excel Vers. ve Dili
Microsoft Office 2010
Altın Üyelik Bitiş Tarihi
09-07-2022
Ömer Bey zaman ayırdığınız için teşekkür ederim, ayrıca asıl tabloda özel kişi bilgileri olduğu için için örnek ile gerisini getiririm diye düşünmüştüm!
iyi çalışmalar
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Örnek belgeden maksat, yapının
(sayfa düzeni, sayfalar arası bağlantı, işlem yapılacak sütun/satır adresleri tabi, varsa formüller, varsa makrolar, varsa userformlar gibi)
gerçek belgeyle aynı olmasıdır.

Yoksa kimse kimsenin, gizli kalması lazım gelen bilgilerini istemiyor,
örnek belgedeki verierin gerçek verileri temsil edebilecek nitelikte olması önemli (METİN/SAYI/TARİH vs) .

Kolay gelsin.
 
Üst