• DİKKAT

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

Veri Yoksa satır Gizlensin

Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
İyi günler
Ekteki örnek dosyada sayfa1 de c4:c34 hücreleri arasında veri yoksa sayfa2 ve sayfa3 de veri olmayan bölümler otamatik olarak gizlenebilir mi?.Ayrıca veri varsa tekrar ilgili satırlar otamatik olarak gösterilebilir mi?
 

Ekli dosyalar

Sayın doğan bey çok teşekkür ederim.Benim office programı 2003 olduğu için açamadım.Rica etsem dosyayı bu formatta yükleyebilirmisiniz?
 
2013 geriye yönelik destekli, açıyor olmanız lazım.
2013 office i satın aldığım gün ancak destek olabilirim :)

ya da 2013 kullanan birileri destek olacaktır bu konuda benim bilmediğim bir sıkıntı var ise...

son olarak "AÇAMIYORUM" demek yerine, açmaya çalıştığınızda aldığınız hatayı belirtirseniz belki ben de destek olabilirim
 
Sayın Doğan bey ne yaptımsa olmadı.Convert ederek 2003 'e çevirdim.Yine olmadı
 
Aşağıdaki kodları Sayfa1'in kod sayfasına yapıştırın
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row >= 3 And Target.Row <= 34 And Target.Column = 3 Then
If Len(Target) = 0 Then
Sheets("sAYFA2").Rows(Target.Row + 1).Hidden = True
Sheets("Sayfa3").Rows(Target.Row + 1).Hidden = True
Else
Sheets("sAYFA2").Rows(Target.Row + 1).Hidden = False
Sheets("Sayfa3").Rows(Target.Row + 1).Hidden = False
End If
End If
End Sub
 
Ömer bey sayfa1 in tamamını sildiğimde şu makroda hata veriyor
If Len(Target) = 0 Then
 
Doğan bey sayfa1 de gizlenen hücrelere tekrar veri girdiğimde hata veriyor.
 
Aşağıdaki kodu deneyin
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
adres = Split(Target.Address, "$")
bak = UBound(adres)
If bak = 4 Then
adres = Replace(adres(2), ":", "") + 1 & ":" & adres(4) + 1
Else
adres = Replace(adres(2), ":", "") + 1 & ":" & Replace(adres(2), ":", "") + 1
End If
If Target.Row >= 3 And Target.Row <= 34 And Target.Column = 3 Then
If Target(1) = "" Then
Sheets("sAYFA2").Rows(adres).Hidden = True
Sheets("Sayfa3").Rows(adres).Hidden = True
Else
Sheets("sAYFA2").Rows(adres).Hidden = False
Sheets("Sayfa3").Rows(adres).Hidden = False
End If
End If
End Sub
 
alternatif döngülü
Kod:
 a = Selection.Count
 ss = False
For i = 1 To a
If Selection(i).Row >= 3 And Selection(i).Row <= 34 And Selection(i).Column = 3 Then
ss = True
Exit For
End If
Next
If ss = True Then
For i = 4 To 34
If Range("C" & i) <> "" Then
Sheets("sAYFA2").Rows(i + 1).Hidden = False
Sheets("Sayfa3").Rows(i + 1).Hidden = False
Else
Sheets("sAYFA2").Rows(i + 1).Hidden = True
Sheets("Sayfa3").Rows(i + 1).Hidden = True
End If
Next
End If
End Sub
 
Son düzenleme:
daha sonrada olabilecek gelişmelere istinaden son satır bilgisini tüm kolonu dikkate alarak hesaplatıyorum. ilk yaptığım xlsm dosyasında, 1 milyon satır olduğu için, buna istinaden kalan 1M bilgisi 2003 tarafından desteklenmediği için o sıkıntıyı yaşıyorsunuz. xls olarak kaydettikten sonra denemedim açıkçası, kusura bakma.

düzenlenmiş hali ekte
 

Ekli dosyalar

sAYFA2 de C4 Sayfa3 de E4 hücrelerine herhangi bir başlık yazılırsa aşağıdaki kod iş görür. Formül olması önemli değil süz hücre değerine bakıyor.
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("sAYFA2").Range("c4").AutoFilter Field:=1, Criteria1:="<>"
Sheets("Sayfa3").Range("e4").AutoFilter Field:=1, Criteria1:="<>"
End Sub
 
Son düzenleme:
süzü çok kullanmıyorum, haklı olabilirsiniz, yanlış bilgi verdiysem kusura bakmayın.
Ancak arada boş satır olursa patlamaz mı ? normal filtrelemede
Örneğin;
c4-c10 arası dolu , c11-c15 arası boş ise, filtre sadece c4-c11(dahil) aralığı kapsamayacak mı ?
c12 ve sonrası filtrenin dışında kalmayacak mı ?
 
Sn doganbaris
İşin özelliği de bu formül olursa süze dahil ediyor, formül olmazsa dahil etmez. Hücre değeri "" olduğu içinde o hücreleri gizliyor. Kimi durumlarda işe yarar.
 
Geri
Üst