Filtreleme Hk.

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
731
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar.

İçinden çıkamadığım bir sorum olacak. Aşağıdaki kodda sh1 sayfasının 8. sütunundaki veri "KADROLU" veya "KAYMAKAMLIK OLURU" ve 16 sütunundaki veri "ÖĞRETMEN" veya "UZMAN ÖĞRETMEN" ise filtreleme yapsın istiyorum. Ama 16 sütunda "ÖĞRETMEN" ve "UZMAN ÖĞRETMEN" olmayanları da filtreleme yapıyor. Yardımcı olursanız çok sevinirim.

If sh1.Cells(i, 8).Value = "KADROLU" Or sh1.Cells(i, 8).Value = "KAYMAKAMLIK OLURU" And sh1.Cells(i, 16).Value = "UZMAN ÖĞRETMEN" Or sh1.Cells(i, 16).Value = "ÖĞRETMEN" Then


Başka bir yerde aşağıdaki gibi bir filtreleme yapıyorum onda bir sorun çıkmıyor. Kodsları oradan kopyalayıp yapıştırıyorum. Sadece fazladan yukarıdaki kodda kırmızı renkli olan kodları ekliyorum.

If sh1.Cells(i, 8).Value = "KADROLU" And sh1.Cells(i, 16).Value = "ÖĞRETMEN" Or sh1.Cells(i, 16).Value = "UZMAN ÖĞRETMEN" Then


Bir de aynı sayfada daha önce filtrelenmiş olan verileri aşağıdan yukarıya doğru silip yeni filtreleme bilgilerini yazıyor fakat aşağıdaki kodlar ile silme yaparken çok yavaş siliyor. Silme işlemini nasıl hızlandırabilirim. 90 satırı 10-15 saniyede ancak siliyor.

SonSatirsil = sh2.Cells(Rows.Count, "b").End(3).Row
For ssil = SonSatirsil To 7 Step -1
sh2.Cells(ssil, SonSatirsil).EntireRow.Delete
Next ssil
 
Son düzenleme:

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Eğer parantez kullanırsanız önce parantez içindeki eşitliğe bakılır eğer parantez kullanmazsanız eşitlik soldan sağa doğru kontrol edilir.
Kod aşağıdaki gibi olmalı.
Kod:
If (sh1.Cells(i, 8).Value = "KADROLU" Or sh1.Cells(i, 8).Value = "KAYMAKAMLIK OLURU") And (sh1.Cells(i, 16).Value = "UZMAN ÖĞRETMEN" Or sh1.Cells(i, 16).Value = "ÖĞRETMEN") Then
 
Son düzenleme:

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Diğer sorunuzda döngü kullanmanıza gerek yok.

Kod:
sh2.Rows("7:" & SonSatirsil).Delete
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Rica ederim. Kolay gelsin.
 
Üst