Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
3
Cevap
4828
Tıklama
0
Öne Çıkarma
excelde boş satırları kaldıran makro
M
22 yıl
Er
Konu Sahibi

slm
başka bir programdan excele veri transferi yapıyorum ama satır araları ve sutunlar cok aralıklı oluyor. excelde başluk olan satır ve sutunları kaldır v.b. bir fonksiyon veya benzer amaçlı yazılmış makro komutları hakkında bilgisi olan arkadaşlar yardım edebilir mi?
istediğim aradaki boş sutun ve satırları kaldırmak.



C
22 yıl
Yarbay

Dışardan veri alıyorsan büyük ihtimalle o satırlar boş olmasına rağmen excel tarafından dolu olarak alıgılanacaktır.(İlk satırı seçip ctrl+shift+aşağı ok yap. Eğer seçim ilk boş satırda sonlanmayıp tümünü seçiyorsa boşlarıda dolu olarak algılıyordur.) Eğer böyle ise sana tavsiyem sıralama yapıp boş satırları silmen. Eğer ilk sıralama ile aynı olsun istiyorsan boş bir sütünu 1 den başlayıp veri olan satırın sonuna kadar numaralandır. Boş satırları sildikten sonra numaraları yazdığın sütüna göre sıralatırsın. Sütunlar için böyle pratik bir yöntem bilmiyorum. Onları elle düzeltmek zorundasın

Eğer satırlar gerçekten boş ise

Alt+F11 yapıp VBA Editötürünü aç. Oradan ekleyi seçip modul ekle.
ve aşağıdaki makroları buraya kopyala.

Makroları çalıştırmadan önce satırlar için verilerin en altına sutunlar için ens ondaki boş sütunun ilk hücresine Bitti yazarsan makroyu kısır döngüye sokmamış olursun.
Kolay gelsin..
(Bu işi hiç bilmeyenlerin anlayacağı gibi yazdım ki bilmeyen arkadaşlarda yararlansın...)
Dim x
Sub satsil()
x = ActiveCell.Value ' Aktif Hücrenin Değerini x değişkenine ata
If x = "Bitti" Then End ' x'in değeri Bitti ise makroyu sonlandır
If x = "" Then ' x'in değeri boş ise
Selection.EntireRow.Delete ' satırı sil
GoTo atla: ' bir alttaki hücreyi seçmeden atla bölümüne git
End If ' if'i sonlandır.
ActiveCell.Offset(1, 0).Select ' Bir alttaki hücreyi seç
atla:
satsil ' makroyu yeniden başlat'
End Sub

Sub sutsil()
x = ActiveCell.Value ' Aktif Hücrenin Değerini x değişkenine ata
If x = "Bitti" Then End ' x'in değeri Bitti ise makroyu sonlandır
If x = "" Then ' x'in değeri boş ise
Selection.EntireColumn.Delete ' sütunu sil
GoTo atla: ' bir sonraki sütunu seçmeden atla bölümüne git
End If ' if'i sonlandır.
ActiveCell.Offset(0, 1).Select ' bir sonraki sütunu seç
atla:
sutsil ' makroyu yeniden başlat'
End Sub



M
22 yıl
Er
Konu Sahibi

slm,

verdiğin bilgiler için çok tsk. Excel de makro kullanımı benim tablolama çalışmalarımda bayagı işime yarar gibi gözüküyor, Bu konuda kendimi geliştirebileceğim bir site biliyormusun?



C
22 yıl
Yarbay

Benim bildiğim İnternette çok kapsamlı bir Türkçe site yok
www.classmodule.com 'daki forum'a üye olursan. Takıldığın konularda oradan yardım alabilirsin. Ayrıca orada kitap satıyorlar pahalı gelmezse o kitap işne fazlasıyla yarayacaktır.
(http://www.excel.gen.tr/siparis/siparis.htm )

Kolay gelsin.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.