Excelde veriye göre satır gizleyebilirmiyiz

Katılım
7 Ocak 2021
Mesajlar
40
Excel Vers. ve Dili
2016 TR
Altın Üyelik Bitiş Tarihi
27-07-2024
Merhaba, sorum başlıktaki gibi açık,
Excelde bir hücredeki veri koşulu uygunsa istediğimiz bir yada birkaç satırı gizleyebilirmiyiz?
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
Merhaba, sorum başlıktaki gibi açık,
Merhaba,
Sorunuz o kadar da açık değil. Ama cevap: Makro ile yapılabilir. Ancak aşağıdaki soruları cevaplayan bir örnek dosya paylaşırsanız...
Hangi hücre?
Koşul nedir?
bir yada birkaç satır
Kaç satır ve hangi satırlar?
 
Katılım
7 Ocak 2021
Mesajlar
40
Excel Vers. ve Dili
2016 TR
Altın Üyelik Bitiş Tarihi
27-07-2024
Sorumun gayet açık olduğuna eminim excelde herhangi bir hücredeki koşul uygunsa mesela b3 hücresinde siyah yazarsa 5. Satır komple gizlenecek, gibi. Koşullu biçimlendirme gibi düşünün. Ama bu koşulda belirli bir satırı komple gizleyecek bir formül
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
Makro ile yapılabilir...
Kod:
Rows("5").Hidden = (Range("B3").Text = "Siyah")
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
@ÖmerBey bu tarz bir kullanımla ilk kez karşılaşıyorum. Şaşırdım açıkçası. Genelde VBA'da belli kalıplar dışına çıkıldığında hep hata vereceğini düşünürdüm. Benim için gerçekten çok sıradışı bir çözüm. Teşekkürler.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,334
Excel Vers. ve Dili
2007 Türkçe
Eyvallah üstadım, onur duydum. Ben de sizin şahsınızda emeğini esirgemeyen, bilmediklerimizi öğreten, çalışmalarıyla kendisinden sonrakilere yol gösteren siz büyüklerimize teşekkür ederim.
Sağlıcakla kalınız...
 
Katılım
7 Ocak 2021
Mesajlar
40
Excel Vers. ve Dili
2016 TR
Altın Üyelik Bitiş Tarihi
27-07-2024
Tekrar merhaba konuyu biraz geç hortlattım sanırım. ancak deneme şansım olabildi. Şimdi bu makroyu nasıl yapacağım tarif edebilirmisiniz ? kusura bakmayın pek excel bilgim yokta :( makro kaydet yaparakmı ? yoksa vba olarak kodu kopyala yapıştır mı yapacağım? tam anlayamadım
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Excel dosyanız açıkken Alt+F11 yaparak VBA bölümüne geçin
Üstte Insert menüsünden Module'yi seçin
Açılan boş sayfaya aşağıdaki kodları yapıştırın:

PHP:
Sub gizle()
    Rows("5").Hidden = (Range("B3").Text = "Siyah")
End Sub
Excel dosyanıza geçin
Sayfaya bir düğme/şekil/nesne ekleyin
Eklediğinize sağ tıklayıp Makro Ata deyin
Açılan listeden gizle makrosunu seçip işlemi tamamlayın

Artık o eklediğiniz düğmeye/nesneye/şekle tıkladığınızda makro çalışacaktır.

Dosyanızı "Makro içerebilen excel dosyası" olarak kaydetmeyi unutmayın.
 
Katılım
7 Ocak 2021
Mesajlar
40
Excel Vers. ve Dili
2016 TR
Altın Üyelik Bitiş Tarihi
27-07-2024
Çok teşekkür ederim yaptım . Fakat 4 ayrı buton koyup hepsine ayrı satırları gizle diye komut veriyorum bazen kafası karışıyor :)
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Makroların pek kafası karışmaz ama bizim karışır genelde. Makrolar ne yazıldıysa onu uygularlar. Dosyada aynı anda çalışan başka makrolar varsa çakışma nedeniyle kafası karışmış zannedebilirsiniz ama sonuçta tüm makrolar kendilerine verilen görevleri yapmaya çalışırlar.
 
Katılım
7 Ocak 2021
Mesajlar
40
Excel Vers. ve Dili
2016 TR
Altın Üyelik Bitiş Tarihi
27-07-2024
Sıkıntının ne olduğunu anladım :) Kafa karışma muhabbeti şöyle; 4 farklı makro yaptım mesela 1.si 15-20 satırlarını gizliyor 2.si 19-20 3.sü 16-20 şimdi bunları karışık çalıştırınca gizlenmiş satırlar içinden gizlemeye çalışıyor ver diğer gösterilmesi gereken satırları göstermiyor. aslında makro düzgün çalışıyor. Şimdi çözüm şöyle ama sizden yardım isteyeceğim. buradaki "hidden" yerine göster gibi bir kod varmı ?? ben kullandığım kodlarıda yazıyorum
Kod:
Sub gizle()
    Rows("11:20").Hidden = (Range("L1").Text = "KIRMIZI")
End Sub
Sub gizle1()
    Rows("15:20").Hidden = (Range("L1").Text = "SARI")
End Sub
Sub gizle2()
    Rows("19:20").Hidden = (Range("L1").Text = "9SIYAH")
End Sub
Sub gizle3()
    Rows("88").Hidden = (Range("L1").Text = "PEMBE")
End Sub
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Şimdi en başa dönüp aslında sorunuzun "gayet açık" olmadığını, dosya durumuna ve yapılmak istenene göre farklı açıklamalar yapmak gerektiğini anlamışsınızdır umarım ;)

Hidden yerine Visible kullanılabilir.

Genelde satır gizleme işlemi için önce tüm satırlar gösterilir sonra da istenen satırlar gizlenir.

PHP:
Sub gizle2()
    Rows("11:20").Visible = True
    Rows("19:20").Hidden = (Range("L1").Text = "9SIYAH")
End Sub
gibi kullanabilirsiniz.
 
Üst