• DİKKAT

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

Sıfır değerli hücrelerdeki sıfırları silmek

Katılım
20 Eylül 2005
Mesajlar
216
Excel Vers. ve Dili
Excel 2003 Türkçe
Sıfırlar yüzünden dosya boyutu büyüyor.
Formüller uzun ve çok. Formülleri kod sayfasında yazıp çoğaltıyorum. Sonra kod ile değerlerini yapıştırıyorum. Böylece dosya boyutunu bir miktar küçültüyorum. Sıfırları silsem daha da küçülecek.
Ctrl+G ile sıfır değerli hücreleri toplu seçip silemedim.
Döngü kullanmak istemiyorum. Çünkü yavaş çalışıyor.
Yardımlarınızı bekliyorum.
 
Slm Hocam
Sorunuza cevap veremeyecem sizin bir okul programınız vardı bir türlü çalıştıramadım mesela sınıf listesinden öğrenci seçtiğim zaman kod bölümünde hata gösteriyor. Saygılar
 
Öğrenci Proğramı

orkaosmaniye@hotmail.com
üzerinden sorununuzu çözmeye çalışalım.
Office proğramı eksiksiz yüklendiyse herhangi bir sorun çıkmıyor. Çünkü çok sayıda kullanıcısı var. Böyle bir sorun iletilmedi. Office 2007'de çalıştırmadığım için onda sorun çıkıyor mu bilmiyorum.
 
Selamlar,

Örnek bir dosya eklermisiniz.
 
Örnek Dosyada, C sütuna Miktarı girildiğinde veya değiştirildiğinde Makro çalışıyor. D ve E Sütunlarında Fiyatı ve Alacak tutarı Makro ile hesaplanıyor. Sonra değerleri yapıştırılarak formülden kurtarılıyor. Bu arada değeri sıfır olan yüzlerce hücre oluşuyor. Bu sıfırları silerek dosyanın boyutunu azaltmak istiyorum. Parola:123
 
Selamlar,

Sanırım bu işlemi döngü kullanmadan yapamayız. Dosyanızda kullandığınız formülleri kopyalama işlemi boş olan satırlarıda kapsıyor. Sıfırlar bu yüzden çıkıyor. Bu işlemi en son dolu olan satıra kadar yaparsak sorunu çözmüş oluruz. Sayfanızın kod bölümündeki Private Sub Worksheet_Change(ByVal Target As Range) başlığı altındaki kodu aşağıdaki şekilde değiştirip denermisiniz. Umarım faydası olur.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    ActiveSheet.Unprotect Password:="123"
    If Target.Column = 3 Then
    Son = [A65536].End(3).Row
    Range("D5:D" & Son).Formula = "=IF(B5=0,0,VLOOKUP(B5,'C'!$A$2:$B$65536,2,FALSE))"
    Range("E5:E" & Son).Formula = "=C5*D5"
    Range("D5:E" & Son).Value = Range("D5:E" & Son).Value
    Range("E3").Formula = "=SUM(E5:E180)"
    Range("F3").Formula = "=SUMIF(F5:F180,""=X"",E5:E180)-SUM(G5:G180)"
    Range("G3").Formula = "=E3-F3"
    Target.Offset(1, 0).Select
    End If
    ActiveSheet.Protect Password:="123"
End Sub
 
Makrosuz Çözüm :

Düzen > Değiştir > Aranan : 0 > Yeni Değer : Boş(bir şey yazılmayacak) > Tümünü Değiştir.
 
Teşekkür ederim, Sayın Korhan
Denedim. Oluyor. Ayrıca Makrolar çalışıp, çalışması bitince tekrar önceki hücrenin seçilmesi ile ilgili kod çok işime yarayacak.
Target.Offset(1, 0).Select
 
Bu şekilde deneyin.

Sub Düğme1_Tıklat()
For x = [a65526].End(3).Row To 1 Step -1
If Cells(x, 1).Value = 0 Then Cells(x, 1).ClearContents
Next
End Sub
 
Kodunuzu denedim. Sadece 0 değerlerinin silinmesini istiyordum. Formül değeri sıfır olanları değil.
COST_CONTROL'un çözümü işimi görüyor. İlginize teşekkür ederim.
 
Geri
Üst