• DİKKAT

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

Boş sütun ve satır silme

Katılım
13 Şubat 2015
Mesajlar
57
Excel Vers. ve Dili
2010
iyi akşamlar arkadaşlar. Excel sayfasında A1 ile AM43 arasında boş olan sütunları makrı ile nasıl silebilrim. Yardımcı olursanız çok sevinirim.
 
Kod:
Sub Makro2()
'
' Makro2 Makro
'

'
    ActiveWindow.SmallScroll Down:=-144
    Range("A1:AM43").Select
    Selection.SpecialCells(xlCellTypeBlanks).Select
    Selection.Delete Shift:=xlToLeft
    ActiveWindow.SmallScroll Down:=-9
    Range("A1").Select
End Sub
 
iyi akşamlar arkadaşlar. Excel sayfasında A1 ile AM43 arasında boş olan sütunları makrı ile nasıl silebilrim. Yardımcı olursanız çok sevinirim.
Yanlış anlamadıysam boş hücreleri değil, A:AM sütun aralığında
tamamen boş (sütun boyunca herhangi bir veri içermeyen) olan sütunları silmek istiyorsunuz.
Bunun için aşağıdaki kod'u kullanabilirsiniz.
Kod:
Sub BOŞ_SÜTUNLARI_SİL()
For sütun = 39 To 1 Step -1
    If WorksheetFunction.CountBlank(Range(Cells(1, sütun), Cells(43, sütun))) = 43 Then
        Columns(sütun).Delete Shift:=xlToLeft
    End If
Next
End Sub
 
çok teşekkür ederim, tam istediğim gibi ikinci gönderdiğiniz. Ancak sütunlar da sıfır değeri de oluyo bazen dolayısıyla silinmiyo. Yani hem sıfır değeri hem de boş değerler için nasıl değiştirebiliriz makroyu
 
Bir de , aynı şekilde satır silme makrosu nasıl olabilir. Yani örnek olarak; AN1 İLE AN300 arasında değeri sıfır veya boş olan satırları nasıl silebiliriz
 
Sub BOŞ_SÜTUNLARI_SİL()
For sütun = 39 To 1 Step -1
If WorksheetFunction.CountBlank(Range(Cells(1, sütun), Cells(43, sütun))) = 43 Then
Columns(sütun).Delete Shift:=xlToLeft
End If
Next
End Sub[/CODE][/QUOTE]

Ömer Baran Bey, verdiğiniz kod çok iyi çalıştı çok teşekkür ederim. Ama şöyle bi sıkıntı oldu. Bazı hücrelerde sıfır değeri de var. Yani sütun boyunca veri içermeyen ve sıfır içeren sütunları silmek istiyorum. Yardımcı olursanız çok sevinirim.
 
Merhaba.
Kırmızı satırı silip yerine aşağıdaki mavi satırları kulanarak istediğiniz elde edilebilir.
Kod:
[FONT="Trebuchet MS"]Sub BOŞ_SÜTUNLARI_SİL()
For sütun = 39 To 1 Step -1
[COLOR="Red"]If WorksheetFunction.CountBlank(Range(Cells(1, sütun), Cells(43, sütun))) = 43 Then[/COLOR]
Columns(sütun).Delete Shift:=xlToLeft
End If
Next
End Sub[/FONT]
Kod:
[COLOR="Blue"][FONT="Trebuchet MS"]boş = WorksheetFunction.CountBlank(Range(Cells(1, sütun), Cells(43, sütun)))
sıfır = WorksheetFunction.CountIf(Range(Cells(1, sütun), Cells(43, sütun)), 0)
If boş + sıfır = 43 Then[/FONT][/COLOR]
 
AN1:AN300 hücre aralığında değeri 0 veya boş olanları silmek için ise aşağıdaki kod'u kullanabilirsiniz.
Kod:
Sub BOŞ_SATIRLARI_SİL()
For satır = [COLOR="blue"][B]300[/B][/COLOR] To [COLOR="blue"][B]1[/B][/COLOR] Step -1
If Cells(satır, [B][COLOR="Red"]40[/COLOR][/B]) = 0 Or Cells(satır, 40) = "" Then
    Rows(satır & ":" & satır).Delete Shift:=xlUp
End If
Next
End Sub
 
Ömer Baran Bey bi sorum daha olacak kusura bakmayın. Hücredeki değere göre sütun gizleme makrosu gerekli. Yani O8 İLE AY8 sütunları arasında boş olan sütunları gizlemek istiyorum. Tüm sütunun boş olmasına gerek yok. O8 ile AY8 arasında hangi sütunda değer yoksa o sütunu gizlesin.
 
Ömer Bey gerek kalmadı hallettim çok sağolun
 
Geri
Üst