Hücre dolu ise satırları göster

Katılım
7 Temmuz 2004
Mesajlar
330
Excel Vers. ve Dili
Office 2013 Türkçe
Merhaba,

Yaptığım tabloda sayfalar alt alta olmak üzere,
01 ve 42. satılarda 1. sayfa,
43 ve 84. satılarda 2. sayfa,
85 ve 126. satılarda 3. sayfa,
127 ve 168. satılarda 4. sayfa,
169 ve 210. satılarda 5. sayfa şeklinde düzenlenmiştir.

Tablodaki boş sayfaları gizlemek istiyorum. Çalışılan sayfanın son satırdaki (örneğin C42) hücresi dolu ise gizli olan bir sonraki sayfanın gösterilmesini istiyorum. Eğer sayfadaki veriyi tamamen silersem sayfa tekrar gizlenecek. Tüm sayfalar boş ise sadece 1. sayfa görünecek.

Saygılarımla.
 
Katılım
7 Temmuz 2004
Mesajlar
330
Excel Vers. ve Dili
Office 2013 Türkçe
Merhaba.

Konu gözden kaçtı diye tekrar hatırlatmak istedim.
Saygılar.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,359
Excel Vers. ve Dili
Ofis 365 Türkçe
Bu konuyu bende merak ettim
 

Metin Karaağaç

Uzman
Altın Üye
Katılım
25 Aralık 2004
Mesajlar
1,793
Excel Vers. ve Dili
Office 2016 Pro Plus-Türkçe
Altın Üyelik Bitiş Tarihi
10-12-2025
koşullu biçimlendirme ile rengini beyaz seçsek olmaz mı?
çok mu acemice olur acaba?
 

Metin Karaağaç

Uzman
Altın Üye
Katılım
25 Aralık 2004
Mesajlar
1,793
Excel Vers. ve Dili
Office 2016 Pro Plus-Türkçe
Altın Üyelik Bitiş Tarihi
10-12-2025
biraz uğraşıyım dedim de, karışık oluyor, hata veriyor.
önerimden vazgeçtim.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu sayfanın kod sayfasına kopyalayarak denermisiniz. 43-210 nolu satırlar arasını gizleyerek deneyin.

[vb:1:540628ff44]Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [c42:c210]) Is Nothing Then Exit Sub
deg = Array(42, 84, 126, 168)
For a = 0 To 3
say = WorksheetFunction.CountA(Range("c" & deg(a) + 1 & ":c" & deg(a) + 42))
If Range("c" & deg(a)) <> 0 Then Rows(deg(a) + 1 & ":" & deg(a) + 42).EntireRow.Hidden = False
If say = 0 And Range("c" & deg(a)) = 0 Then Rows(deg(a) + 1 & ":" & deg(a) + 42).EntireRow.Hidden = True
Next
End Sub
[/vb:1:540628ff44]
 

Metin Karaağaç

Uzman
Altın Üye
Katılım
25 Aralık 2004
Mesajlar
1,793
Excel Vers. ve Dili
Office 2016 Pro Plus-Türkçe
Altın Üyelik Bitiş Tarihi
10-12-2025
Sayın Leventm;
Makro hakkında fazla bilgim yok ama kendim bir kod yazayım dedim.
Fakat bir türlü "sayfa1 C42 de değer varsa" yazamadım.
Bu nasıl yazılmalıdır?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
IF(Sayfa1!Range[C42]>0) then (işte bu satırı yazamadım bi türlü)
Rows("43:84").Select
Selection.EntireRow.Hidden = True
End If
End Sub
 
Katılım
7 Temmuz 2004
Mesajlar
330
Excel Vers. ve Dili
Office 2013 Türkçe
Sayın leventm,

Emeğiniz için teşekkürler.
Kodlar 43-210 satırlar gizliyken çok güzel çalışıyor. Yapmak istediğimin bir kısmı tamam. Birde verileri sildiğimizde sayfaları tekrar gizleyebilir miyiz? Tabi bu kez silinen verilere göre sayfalar gizli olacak;

C54 boş ise 43-210 satırlar gizli,
C96 boş ise 85-210 satırlar gizli,
C138 boş ise 127-210 satırlar gizli,
C180 boş ise 169-210 satırlar gizli olacak.

Teşekkürler.
 
Üst