dolu hücrelerin satır numaralarını bulma

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
a2'de 5 a6'da 10 a11'de 22 sayıları var benim istediğim dolu olan satırların satır numaralarını bulmak, tek işlemde ama , bir fonksiyonun içine yerleştiricem

burda her zaman sayı olacak birşey diye yok, metinde olabilir

istediğim elde ettiğim sonuçların satır numaraları öğrenmek
 
Son düzenleme:
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
Ne kadarlık bir alanda arama yapılacağını belirtmediğiniz için 1000 satır ve 20 sütun ile sınırlandırdım, herhangi bir değer olan satır numaralarını msgbox a ve E1 hücresine yazdırıyor.
Kod:
Sub bul()
For n = 1 To 1000
    For k = 1 To 20
        If Cells(n, k).Value <> "" Then
            satırlar = satırlar & " " & Cells(n, k).Row
            Exit For
        End If
    Next
Next
MsgBox satırlar
Cells(1,5).Value = satırlar
End Sub
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
sonucu alt alta nasıl yazdırırız

fonksiyon ile nasıl yapılabilir
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
:cool:
Kod:
=EĞER(A1<>"";SATIR(A1);"")
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ekli dosyayı inceleyiniz.:cool:
 

Ekli dosyalar

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
evren üstad bu yol çok uzun

Sub bul()
For n = 1 To 1000
For k = 1 To 20
If Cells(n, k).Value <> "" Then
satırlar = satırlar & " " & Cells(n, k).Row
Exit For
End If
Next
Next
MsgBox satırlar
Cells(1,5).Value = satırlar
End Sub

bu kodu düzeltebilirmisiniz
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
bu işi tek bir fonksiyon ile yapılması mümkünmü acaba

topla.çarpım ile olabilir gibi geliyor yada dizin formülleri ile
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ben fonksiyon ile çözmek istediğiniz yamışsınız öyle çözdüm konuyu
Makro ile istiyorsanız bulunan satır numaraları hangi sütuna yazdırılacak?:cool:
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
sayfa2'de a sütun'una yazdırıcam
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
sayfa2'de a sütun'una yazdırıcam
:cool:
Kod:
Sub bul()
Range("A:A").ClearContents
For n = 1 To 1000
For k = 1 To 20
If Cells(n, k).Value <> "" Then
sat = sat + 1
Sheets("Sayfa2").Cells(sat, "A").Value = Cells(n, k).Row
Exit For
End If
Next
Next
MsgBox "İşlem Tamam"
End Sub
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,633
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
:cool:
Kod:
Sub bul()
Range("A:A").ClearContents
For n = 1 To 1000
For k = 1 To 20
If Cells(n, k).Value <> "" Then
sat = sat + 1
Sheets("Sayfa2").Cells(sat, "A").Value = Cells(n, k).Row
Exit For
End If
Next
Next
MsgBox "İşlem Tamam"
End Sub
elinize sağlık

Range("A:A").ClearContents bu kısmı yanlışlıkla eklediniz galiba
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,248
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Alternatif olarak aşağıdaki kodu denermisiniz.

Kod:
Option Explicit
 
Sub DOLU_HÜCRELERİN_SATIR_NOLARI()
    Dim Satır As Long
    Dim Hücre As Range
    Satır = 1
    On Error GoTo Son
    Sheets("Sayfa2").Columns(1).ClearContents
    For Each Hücre In Cells.SpecialCells(xlCellTypeConstants, 23)
    Sheets("Sayfa2").Cells(Satır, 1) = Hücre.Row
    Satır = Satır + 1
    Next
    For Each Hücre In Cells.SpecialCells(xlCellTypeFormulas, 23)
    Sheets("Sayfa2").Cells(Satır, 1) = Hücre.Row
    Satır = Satır + 1
    Next
Son:
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Üst