• DİKKAT

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

Çözüldü Selection.specialcells(xlcelltypeblanks) tüm boşlukları seçmiyor

KoNFiCuS

Altın Üye
Katılım
18 Mayıs 2011
Mesajlar
71
Excel Vers. ve Dili
Office 365 TR - 64 Bit
Değerli Üstadlar,

ufak bir problemim var örneğin A2 den E son satıra kadar olan bir aralıkta boş satırlar bulunmakta, kod ile bunları seçmek istediğimde sadece A sütunun daki boşlukları seçmekte.

Kısaca kodum;
Kod:
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
lastCol = Cells(1, Columns.Count).End(xlToLeft).Column

Range(Cells(1, 1), Cells(lastRow + 2, 1 + 4)).Select 'Test 1
On Error GoTo errhandlr
Range("A2:d" & lastRow - 1).Select 'Test 2


Range("A2:d" & lastRow - 1).SpecialCells(xlCellTypeBlanks).Select 'Test 3


Selection.FormulaR1C1 = "=R[-1]C"



Range(Cells(1, 1), Cells(lastRow + 2, 1 + 4)).Value = Range(Cells(1, 1), Cells(lastRow + 2, 1 + 4)).Value

Test 1,2,3 istediğim aralığı seçiyor, SpecialCells(xlCellTypeBlanks).Select kod satırı geldiğinde sadece A daki boşlukları seçmekte. nasıl tüm aralığı seçtirebilirim.
 

Ekli dosyalar

  • ekran1.jpg
    ekran1.jpg
    106.5 KB · Görüntüleme: 5
  • ekran2.jpg
    ekran2.jpg
    111.6 KB · Görüntüleme: 5
Merhaba,

Hücreler gerçekte boş olmayabilir mi?

UZUNLUK formülü ile kontrol edebilirsiniz.
 
Korhan bey,

gerçekten boş test için for döngüsüne soktum ilk döngüde sadece A yı yaptı diğer döngüde kalanları yaptı. Buda bir çözüm oldu ama öğrenmek için ben mi bir hata yapıyorum kodlarda dedim.
 
Sorunlu dosyayı paylaşın biz de test edelim..
 
Merhaba,

Hücreler aslında boş değil fakat karakter de yok. Çift tıklama ile içine gir - çık yaparak yada tek tek seçip Delete tuşunu kullandıktan sonra Boşluk olarak seçilebildiğini görebilirsiniz. Daha basit bir yolu olabilir fakat aşağıdaki gibi bir kod bloku ile bu hücreleri temizleyebilirsiniz.

Kod:
Dim hcr As Range
For Each hcr In ActiveSheet.UsedRange
If Len(hcr) = 0 Then hcr.ClearContents
Next

251399
 
Kod:
Sub test()
    With Range("A2:D" & Cells(Rows.Count, 1).End(xlUp).Row - 1)
        .Value = .Value
        .SpecialCells(xlCellTypeBlanks).Formula = "=A2"
        .Value = .Value
    End With
End Sub
 
Gerçekten ilginç..

Hem uzunluğu etkilemiyor. Hem de boş değil..

Formüllerle karakter kodunu tespit etmeye çalıştım. Fakat başarılı olamadım. İlk defa böyle bir durumla karşılaştım.

Bu raporu nereden aldınız?
 
Gerçekten ilginç..

Hem uzunluğu etkilemiyor. Hem de boş değil..

Formüllerle karakter kodunu tespit etmeye çalıştım. Fakat başarılı olamadım. İlk defa böyle bir durumla karşılaştım.

Bu raporu nereden aldınız?

Şirket içi yazılımdan Excel Export ile.

@veyselemre @DoğanD sizin kodlarınızı deneyeceğim. Teşekkürler.
 
Merhaba;

A sütunundaki boş hücreler, null

Diğer sütunlardaki B,C,D olanlarda boş hücreler ise, ""

değerine sahipler.
 
Kod:
Sub test()
    With Range("A2:D" & Cells(Rows.Count, 1).End(xlUp).Row - 1)
        .Value = .Value
        .SpecialCells(xlCellTypeBlanks).Formula = "=A2"
        .Value = .Value
    End With
End Sub

Evet bu kod tam anlamıyla çalıştı, çok teşekkür ederim.
 
Geri
Üst