Excel'de belirli bir satır veya sütundaki sondan bir önceki değer nasıl bulunur ve alınır?
Geniş Excel çalışma sayfalarıyla çalışırken, bir satır veya sütundaki son değeri değil de özellikle sondan bir önceki değeri belirlemeniz sıkça gerekebilir. Örneğin, aşağıdaki ekran görüntüsünde gösterildiği gibi A1:E16 aralığı verildiğinde, 6. satırdaki ya da B sütunundaki sondan bir önceki değere ulaşmanız gerekebilir. Bu ihtiyaç, son değişiklikleri takip ederken, zaman serisi verilerini analiz ederken veya bir veri kümesindeki en güncel ancak mevcut olmayan kayıtları incelemek isteyerek yaygın olarak ortaya çıkar. Son değeri bulmaktan farklı olarak, sondan bir önceki değeri tespit etmek — özellikle veriler boş hücreler içerdiğinde veya düzenli olarak güncellendiğinde — daha az doğrusal hale gelebilir. Bu makale, iş akışınızı daha verimli hale getirmenize ve yaygın tuzaklardan kaçınmanıza yardımcı olmak için bu görev için net, adım adım çözümler sunar.

- Bir satırda veya sütunda formüllerle sondan bir önceki değeri bulun ve döndürün
- VBA Kodu – Belirtilen bir satırda veya sütundaki sondan bir önceki değeri bulmak için makro kullanın
- Diğer Yerleşik Excel Yöntemleri – Tüm boşlukları filtreleyin ve sondan bir önceki değeri elle belirleyin
Bir satırda veya sütunda formüllerle sondan bir önceki değeri bulun ve döndürün
Yukarıdaki ekran görüntüsünde gösterildiği gibi, A1:E16 aralığında 6. satırda veya B sütununda sondan bir önceki değeri bulup döndürmeniz gerektiğinde Excel formülleri dinamik ve verimli bir çözüm sunar. Formüller, verilerinizin sıkça güncellendiği ya da ekleme ve silme işlemlerine bağlı olarak sondan bir önceki değerin konumunun değişebileceği senaryolarda idealdir. Elle yapılan yöntemlerin aksine, formüller sayesinde sonuçlarınız son veri girişine göre otomatik olarak güncellenir.
B sütunundaki sondan bir önceki değeri bulun ve döndürün
1. Sondan bir önceki değeri görüntülemek istediğiniz boş bir hücre seçin. Formül Çubuğuna aşağıdaki dizi formülünü girin ve ardından bunu bir dizi formülü olarak onaylamak için eski sürüm Excel’de Ctrl + Shift + Enter tuşlarına basın. Excel 365 veya Excel 2021 sürümlerinde ise yalnızca Enter tuşuna basmanız yeterlidir; çünkü bu sürümlerde dizi formülleri otomatik olarak işlenir.
=INDEX(B:B,LARGE(IF(B:B<,>,"",ROW(B:B)),2)) 
Not: Bu formülde B:B, B sütununu ifade eder. Farklı bir sütundaki sondan bir önceki değere ihtiyacınız varsa, B:Bkısmını istediğiniz sütun referansına göre değiştirin (örneğin, C sütunu için)C:C olarak değiştirin). Bu yöntem, aralıkta boş hücreler olsun ya da olmasın çalışır; ancak gizli değerler veya filtreyle gizlenmiş veriler varsa olası tutarsızlıkları göz önünde bulundurun. Beklenen değeri görmüyorsanız, her zaman Veri Aralığınızı kontrol edin.
6 satırındaki sondan bir önceki değeri bulun ve döndürün
6. satır için sonucu görüntülemek üzere boş bir hücre seçin. Ardından Formül Çubuğuna aşağıdaki formülü girin ve onaylamak için Enter tuşuna basın.
=OFFSET($A$6,0, COUNTA(6:6)-2,1,1) 
Not: Yukarıdaki formülde, $A$6, 6. satırın ilk hücresidir ve 6:6tüm 6. satırı belirtir. Farklı satırları hedeflemek için bu referansları gerektiği gibi ayarlayın. Formül, 6. satırındaki boş olmayan hücreleri dinamik olarak sayar ve ardından sondan ikinci dolu hücreyi bulmak için başlangıç hücresinden ofset uygular. Satırınız boş dize ()"") döndüren formüller içeriyorsa, COUNTA bunları boş olmayan olarak sayabilir; bu da sonucu etkileyebilir. Sabit değerler ile formüllerin karışık bulunduğu aralıklarda hatalardan kaçınmak için sonuçlarınızı mutlaka tekrar kontrol edin.
Formüller kullanma ipuçları:
- Geniş veri kümelerinde, tam sütun referanslarının (örneğin,)
B:B) kullanılması performansı olumsuz etkileyebilir. Mümkünse aralığı yalnızca ihtiyacınız olan bölgeyle sınırlayın (örneğin,B1:B100). - Verileriniz gizli satırlar içeriyorsa veya filtrelenmişse, formüller bu gizli ve filtreyle gizlenmiş hücreleri saymaya devam eder. Filtrelenmiş veriler için özel ara toplam işlevlerini veya yardımcı sütunları kullanmayı düşünün.
- Hedef satır veya sütundaki tüm değerler boşsa, bu formüller hata verebilir veya beklenmedik sonuçlar döndürebilir; verilerinizin en az iki boş olmayan değere sahip olduğundan emin olun.
VBA Kodu – Belirtilen bir satırda veya sütundaki sondan bir önceki değeri bulmak için makro kullanın
İkinci sondan değeri, değişken veya geniş aralıklarda sıklıkla bulmanız gereken kullanıcılar için, özellikle dinamik ya da karmaşık tablolarla çalışırken süreci bir VBA makrosuyla otomatikleştirmek ciddi zaman tasarrufu sağlayabilir. Makrolar, veri kümenizin boyutu değiştiğinde formülleri sürekli güncellemekten kaçınmak istediğinizde veya aynı yöntemi kullanarak birden fazla farklı konumdan değer almanız gerektiğinde oldukça işe yarar. Aşağıda, hedef satırınızı veya sütununuzu soran ve ardından manuel sayma ya da ayarlama gerektirmeden ikinci sondan değeri otomatik olarak döndüren bir VBA kodu çözümü sunulmaktadır.
1. Excel Şeridi’nde Geliştirici Araçları bölümüne gidin ve VBA düzenleyicisini açmak için Visual Basic seçeneğine tıklayın. Düzenleyicide, yeni bir modül oluşturmak ve aşağıdaki VBA kodunu yapıştırmak için Ekle > Modül seçeneğine tıklayın:
Sub GetSecondToLastValue()
Dim rng As Range
Dim arr As Variant
Dim values As Collection
Dim i As Long
Dim secondLast As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.InputBox("Select the row or column range to analyze", xTitleId, Selection.Address, Type:=8)
If rng Is Nothing Then Exit Sub
arr = rng.Value
Set values = New Collection
If rng.Rows.Count = 1 Then
For i = 1 To rng.Columns.Count
If arr(1, i) <> "" Then
values.Add arr(1, i)
End If
Next i
ElseIf rng.Columns.Count = 1 Then
For i = 1 To rng.Rows.Count
If arr(i, 1) <> "" Then
values.Add arr(i, 1)
End If
Next i
Else
MsgBox "Please select a single row or single column range.", vbExclamation
Exit Sub
End If
If values.Count < 2 Then
MsgBox "There are less than two non-blank values in the selected range.", vbInformation
Exit Sub
End If
secondLast = values(values.Count - 1)
MsgBox "The second-to-last value is: " & secondLast, vbInformation
End Sub 2. Kodu girdikten sonra Excel’e dönün ve makroyu çalıştırmak için
Çalıştır düğmesini kullanın ya da Alt + F8 tuşlarına basarak listeden GetSecondToLastValue öğesini seçin. Ardından, bir istem penceresi tek bir satır veya sütun aralığı (örneğin sütun için B1:B16 veya satır için A6:E6) seçmenizi isteyecektir. Seçiminizi onayladığınızda makro, ikinci sondan değeri bir iletişim kutusunda gösterecektir.
Notlar:
- Bu makro yalnızca dolu hücreleri sayar ve seçili satır veya sütundaki boş hücreleri otomatik olarak atlar.
- Seçiminizde iki adetten az boş olmayan değer varsa, bir uyarı mesajı alır ve hiçbir değer döndürülmez.
- Makro, yalnızca tek satır veya tek sütun seçimleri için tasarlanmıştır. Aynı anda birden fazla satır ve sütun seçerseniz, seçiminizi düzeltmeniz istenir.
- Otomasyon amacıyla kodu, sonucu bir ileti kutusuna değil, belirli bir çalışma sayfası hücresine kopyalayacak şekilde daha da özelleştirebilirsiniz.
Bu VBA çözümü, özellikle dinamik tablolarla veya sıklıkla değişen veri kümeleriyle çalışan kullanıcılar için manuel hataları ve tekrarlı görevleri en aza indirerek önemli bir avantaj sunar.
Diğer Yerleşik Excel Yöntemleri – Tüm boşlukları filtreleyin ve sondan bir önceki değeri elle belirleyin
Formüller ve makrolar ikinci sondan değeri bulmak için otomatik çözümler sunarken, düzensiz ya da bitişik olmayan verilerle çalışırken veya yalnızca ara sıra bir değeri kontrol etmeniz gerektiğinde hızlı ve görsel bir yaklaşım tercih edebilirsiniz. Excel’in yerleşik filtreleme araçlarını kullanmak, boş veya ilgisiz hücreleri geçici olarak gizlemenize ve formül yazmaya ya da düzenlemeye gerek kalmadan hedef girişe kolayca ulaşmanıza olanak tanır.
Filtreleme Yöntemi:
- Sütun veya satırınız için Veri Aralığı’nı seçin (sütunlar için çalışma sayfanızda B1:B16 hücrelerini; satırlar için A6:E6 hücrelerini seçin).
- Excel Şeridi’nde filtre oklarını etkinleştirmek için Veri > Filtrele seçeneğine tıklayın. Sütun başlığında veya belirlediğiniz aralığın yanında yer alan filtre açılır menüsüne tıklayın.
- Boş hücreleri gizlemek için (Boşlar) seçeneğinin işaretini kaldırın. Artık veri listesi yalnızca dolu değerleri gösterir.
- Bir sütun için filtrelenmiş listenin en altına kaydırın ve sondan bir önceki değeri görüntüleyin. Bir satır için (mümkünse filtrelemeden sonra), sağdan sola doğru sayarak sondan bir önceki boş olmayan girişi belirleyin.
Notlar ve İpuçları:
- Filtreleme, küçük ila orta ölçekli listelerde veya değerlerin konumunu görsel olarak doğrulamanız gerektiğinde en hızlı yoldur.
- Veri kümeniz çok büyükse, filtreleme performansı yavaşlayabilir ve bu durum otomasyon veya tekrarlı kullanım için uygun olmaz.
- Filtreler uygulandığında doğru bağlamda olduğunuzdan emin olun; filtrelenmiş listeler gizli satır veya sütunları atlayabilir.
- Filtreleri kaldırmak için Veri sekmesindeki Temizle seçeneğine tıklayın.
Bu yöntem, devam eden dinamik analizlerde veya büyük veri kümeleriyle çalışırken pek uygun değildir; ancak ikinci sondan boş olmayan girişi şeffaf bir şekilde elle kontrol etme imkanı sunar—bu da hızlı sorun giderme veya doğrulama açısından oldukça faydalı olabilir.
İlgili makaleler:
- Excel'de bir metin dizesindeki ilk veya son rakamın konumu nasıl bulunur?
- Excel'de her ayın ilk veya son Cuma günü nasıl belirlenir?
- Excel'de VLOOKUP ile ilk, ikinci veya n'inci eşleşme değeri nasıl bulunur?
- Excel'de bir aralıkta en yüksek sıklığa sahip değer nasıl bulunur?
En İyi Office Üretkenlik Araçları
Excel becerilerinizi Kutools for Excel ile geliştirin ve verimlilikte hiç yaşamadığınız bir deneyim yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli bir arayüz kazandırarak işlerinizi çok daha kolay hale getirir.
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Belgeleri yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açıp oluşturun.
- Günlük üretkenliğinizi %50 artırır ve her gün yüzlerce fare tıklamasından tasarruf etmenizi sağlar!
Tüm Kutools eklentileri — tek bir kurulum dosyasında!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint eklentilerini ve ayrıca Office Tab Pro’yu içeren kapsamlı bir çözümdür; Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans— birkaç dakikada hazır (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— ayrı ayrı eklenti satın almaya göre tasarruf sağlar