• DİKKAT

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

Boş hücreleri nasıl listeye almayız?

Katılım
29 Aralık 2005
Mesajlar
862
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2025
Merhaba

Aşağıdaki kodla mevcut sayfada bir liste oluşturuyorum. Bir makina listesi var ve bu makinaların bakım tarihleri var. Bu tarihlerde D-H sütunlarında tanımlıdır. Ben aşağıdaki kodu kullanarak L-M-N sütunlarına verileri dizdirip liste oluşturuyorum. Ama listeye D-H sütüunlarında boş hücreler varsa onlarda geliyor. Boş hücrelerin alınmasını nasıl önlerim?Örnek dosyayı ekledim.

Sub analiz()
Application.ScreenUpdating = False
On Error Resume Next
Range("L2:n65536").ClearContents
For sat = 2 To Range("A65536").End(xlUp).Row
For süt = 4 To 8
sonsatir = Range("L65536").End(xlUp).Row + 1
Cells(sonsatir, "L") = Cells(sat, süt)
Cells(sonsatir, "m") = Cells(sat, "I")
Cells(sonsatir, "n") = Cells(sat, "J")
Next süt
Next sat
Application.ScreenUpdating = True
'MsgBox "İşlem TAMAM.", vbInformation
End Sub
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,543
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
İkinci döngünüzün içine ilgili hücrenin boş olmama durumunu sorgulayan bir if satırı eklemelisiniz. Tabi bu sorguyu End If ile kapatmayı unutmayınız.

If Cells(sat, süt) <>"" Then
 
Katılım
29 Aralık 2005
Mesajlar
862
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2025
İkinci döngünüzün içine ilgili hücrenin boş olmama durumunu sorgulayan bir if satırı eklemelisiniz. Tabi bu sorguyu End If ile kapatmayı unutmayınız.

If Cells(sat, süt) <>"" Then
Merhaba Korhan bey,

Aşağıdaki gibi çalıştı, teşekkür ederim.

Sub analiz()
Application.ScreenUpdating = False
On Error Resume Next
Range("L2:n65536").ClearContents
For sat = 2 To Range("A65536").End(xlUp).Row
For süt = 4 To 8
sonsatir = Range("L65536").End(xlUp).Row + 1
If Cells(sat, süt) <> "" Then
Cells(sonsatir, "L") = Cells(sat, süt)
Cells(sonsatir, "m") = Cells(sat, "I")
Cells(sonsatir, "n") = Cells(sat, "J")
End If
Next süt
Next sat
Application.ScreenUpdating = True
MsgBox "İşlem TAMAM.", vbInformation
End Sub
 
Üst