Excel'de iki tarih arasındaki tüm kayıtları nasıl çıkarabilirim?
Excel'de zaman damgalı büyük miktarda veriyle çalışırken, belirli iki tarih arasında kalan tüm kayıtları çıkarmak veya filtrelemek zorunda kalabilirsiniz. Örneğin, fatura dönemine ait işlemleri analiz etmek, belirli bir ay için devamsızlık kayıtlarını gözden geçirmek veya özel bir tarih aralığındaki girişleri incelemek isteyebilirsiniz. İlgili her satırı manuel olarak arayıp kopyalamak hem sıkıcı hem de hata yapmaya açık olabilir, özellikle veri hacmi arttıkça. İki belirli tarih arasındaki tüm kayıtları etkili bir şekilde çıkarmak sadece önemli ölçüde zaman ve çaba kazandırmaz, aynı zamanda önemli kayıtları kaçırma veya veri işleme sırasında hata yapma ihtimalini de azaltır.
![]() | ![]() | ![]() |
Aşağıda, Excel'de iki tarih arasındaki tüm kayıtları çıkarmak için kullanabileceğiniz birkaç pratik yöntem bulacaksınız. Her yaklaşımın kendi uygulama senaryoları ve avantajları vardır; formüle dayalı çıkarma (eklenti gerektirmez) Kutools for Excel ile artan kolaylık sağlamadan VBA koduna ve Excel'in yerleşik filtresine kadar farklı ihtiyaçlar ve kullanıcı tercihleri için esnek çözümler sunar.
Formüllerle iki tarih arasındaki tüm kayıtları çıkarma
Kutools for Excel ile iki tarih arasındaki tüm kayıtları çıkarma
VBA ile İki Tarih Arasındaki Kayıtları Çıkarma
Excel Filtresi Kullanarak İki Tarih Arasındaki Kayıtları Çıkarma
Formüllerle iki tarih arasındaki tüm kayıtları çıkarma
Excel'de formüller kullanarak iki tarih arasındaki tüm kayıtları çıkarmak için aşağıdaki adımları izleyebilirsiniz. Bu çözüm özellikle dinamik güncelleme istediğinizde kullanışlıdır: orijinal veri seti veya tarih koşulları değiştiğinde sonuçlar otomatik olarak güncellenir. Ancak, dizi formülleri konusunda çok deneyimli değilseniz ilk kurulum biraz karmaşık görünebilir. Veri setiniz çok büyükse, bu yöntem hesaplama performansında yavaşlamalara neden olabilir.
1. Tarih sınırlarını belirtip kayıtları göstereceğiniz yeni bir çalışma sayfası hazırlayın, örneğin Sheet2. A2 ve B2 hücrelerine sırasıyla başlangıç ve bitiş tarihlerini girin. Açıklık açısından A1 ve B1'e başlıklar ekleyebilirsiniz (örneğin "Başlangıç tarihi" ve "Bitiş tarihi").
2. Sheet2'nin C2 hücresine, Sheet1'deki belirtilen aralığa düşen tarih içeren kaç satır olduğunu saymak için aşağıdaki formülü girin:
=SUMPRODUCT((Sheet1!$A$2:$A$22>=A2)*(Sheet1!$A$2:$A$22<=B2))
Formülü girdikten sonra basın Enter. Bu size kaç girişin filtre koşulunu karşıladığını anlamanıza yardımcı olur, böylece kaç sonuç bekleyeceğinizi kolayca bilirsiniz.
Not: Bu formülde, Sheet1 orijinal veri sayfanıza; $A$2:$A$22 verinizdeki tarih sütununuza işaret eder. Verinize göre bu referansları gerektiği gibi ayarlayın. A2 ve B2 başlangıç ve bitiş tarih hücrelerinizdir.
3. Eşleşen kayıtları göstermek için, çıkarılan listenin başlamasını istediğiniz boş bir hücre seçin (örneğin, Sheet2'de A5 hücresi). Aşağıdaki dizi formülünü girin:
=IF(ROWS(A$5:A5)>$C$2,"",INDEX(Sheet1!A$2:A$22,SMALL(IF((Sheet1!$A$2:$A$22>=$A$2)*(Sheet1!$A$2:$A$22<=$B$2),ROW(Sheet1!A$2:A$22)-ROW(Sheet1!$A$2)+1),ROWS(A$5:A5))))
Formülü yazdıktan sonra basın Ctrl + Shift + Enter (sadece Enter yerine) bunu bir dizi formülü olarak çalıştırmak için. Ardından, tüm eşleşen satırlar görüntülenene kadar sağa ve aşağıya doğru sürükleyerek formülü tüm sütunlara ve satırlara yayın. Boşluklar görmeye başladığınızda, bu tüm eşleşen verilerin çıkarıldığını gösterir.
İpuçları:
- Sıfır görürseniz, bu daha fazla eşleşen kayıt olmadığı anlamına gelir. Daha fazla sürüklemeyi bırakın.
- Formülün INDEX(...) kısmı diğer sütunları çıkarmak için uyarlanabilir. Diğer alanlar döndürmek istiyorsanız Sheet1!A$2:A$22 bölümündeki referans sütununu değiştirin.
- Bu formül, birden fazla kritere göre çalışacak şekilde genişletilebilir veya tüm satırları çıkarmak için her sütunda formülü tekrarlayabilir (tüm satırları çıkarmak için).
4. Bazı tarih sonuçları 5 basamaklı sayılar olarak görünebilir (Excel seri tarih numaraları). Bunları okunabilir tarih formatına dönüştürmek için ilgili hücreleri seçin, şuraya gidin: Ana Sayfa sekmesini açın, biçimlendirme açılır menüsünü açın ve şunu seçin Kısa Tarih. Bu, çıkarılan verileri daha açık ve kullanılabilir hale getirecektir.
Önlemler:
- Orijinal verilerinizdeki tüm tarih girişlerinin gerçekten tarih formatında olduğundan emin olun, metin olarak saklanmadığından emin olun. Aksi takdirde formül beklenen şekilde çalışmayabilir.
- Veri boyutunuz değişirse dizi aralıklarını ayarlayın.
- #NUM! veya #YOK hataları görüyorsanız, boş giriş tarihlerini veya kaynak verilerinizdeki tutarsızlıkları kontrol edin.
Kutools for Excel ile iki tarih arasındaki tüm kayıtları çıkarma
Daha akıcı ve etkileşimli bir çözüm tercih ederseniz, Kutools for Excel'deki Belirli Hücreleri Seç özelliği, formüller veya manuel ayarlar gerektirmeden birkaç tıklamayla tarih aralığınıza uygun tüm satırları çıkarmanıza yardımcı olabilir. Bu özellikle sık sık karmaşık filtreleme görevleri yapan veya büyük veri setlerinde toplu işlemler yapan kullanıcılar için uygundur çünkü formül hatalarını azaltır ve iş akışını hızlandırır.
Kutools for Excel'i yükledikten sonra lütfen aşağıdaki adımları izleyin: (Kutools for Excel Ücretsiz İndir!)
1. İlk olarak, analiz etmek ve çıkarmak istediğiniz veri kümenizin aralığını seçin. Ardından tıklayın Kutools > Seç > Belirli Hücreleri Seç Excel araç çubuğundan. Bu, gelişmiş seçim için bir iletişim penceresi açar.
2. Belirli Hücreleri Seç iletişim kutusunda:
- Eşleşen tüm satırları seçmek için "Tüm Satır" seçeneğini işaretleyin.
- Filtre koşulunu ayarlayın: tarih sütununuz için açılır listelerde Büyüktür ve Küçüktür seçeneklerini seçin.
- Başlangıç ve bitiş tarihlerini metin kutularına manuel olarak girin (formatın verilerinizle eşleştiğinden emin olun).
- Her iki koşulun da aynı anda uygulanmasını sağlamak için “Ve” mantığını seçtiğinizden emin olun.

3. Tıklayın Tamam. Kutools, tarih sütununuz belirttiğiniz aralığa düşen tüm satırları anında seçecektir. Ardından basın Ctrl + C seçili satırları kopyalamak için, boş bir sayfaya veya yeni bir konuma gidin ve basın Ctrl + V çıkarılan sonuçları yapıştırmak için.
İpuçları ve Önlemler:
- Kutools yaklaşımı, orijinal verilerinizi değiştirmenizi veya herhangi bir formül yazmanızı gerektirmez.
- Tarih formatı tutarsızlıkları varsa, kopyalamadan önce seçim sonuçlarını önizleyin.
- Tekrarlanan veya toplu filtreleme işleri için bu özelliği kullanın—farklı tarih aralıkları için adımları hızlıca tekrarlayın.
- Kutools sürümünüzde belirtilen özellik görünmüyorsa, en iyi uyumluluk için en son sürüme güncelleyin.
Senaryo Analizi: Bu yöntem, birçok sütunlu listeleri yöneten veya değişen tarih sınırlarına göre sürekli tam kayıtlar çıkarması gereken kullanıcılar için idealdir.
VBA Kodu - İki belirli tarih arasındaki tüm satırları otomatik olarak filtrelemek ve çıkarmak için bir makro kullanın
Çalışma sürecinize sık sık iki tarih arasındaki verileri çıkarma işlemi giriyorsa ve süreci tamamen otomatikleştirmek istiyorsanız, VBA makrosu kullanmak akıllıca bir seçim olabilir. VBA ile, kullanıcıların tarih sütununu seçmesini, başlangıç ve bitiş tarihlerini girmesini ve eşleşen satırları otomatik olarak filtreleyip yeni bir sayfaya kopyalamasını sağlayabilirsiniz. Bu yaklaşım manuel çabayı azaltır ve hataları azaltır, ancak makroları etkinleştirmeyi ve Visual Basic düzenleyicisi konusunda bazı bilgilere sahip olmayı gerektirir.
İşte böyle bir makroyu ayarlama yöntemi:
1. Geliştirici > Visual Basic'e tıklayarak VBA düzenleyiciyi açın. Yeni Microsoft Visual Basic for Applications penceresinde, Ekle > Modül'e tıklayın ve ardından aşağıdaki kodu Modüle kopyalayıp yapıştırın:
Sub ExtractRowsBetweenDates_Final()
'Updated by Extendoffice
Dim wsSrc As Worksheet
Dim wsDest As Worksheet
Dim rngTable As Range
Dim colDate As Range
Dim StartDate As Date
Dim EndDate As Date
Dim i As Long
Dim destRow As Long
Dim dateColIndex As Long
Dim cellDate As Variant
Set wsSrc = ActiveSheet
Set rngTable = Application.InputBox("Select the data table (including headers):", "KutoolsforExcel", Type:=8)
If rngTable Is Nothing Then Exit Sub
Set colDate = Application.InputBox("Select the date column (including header):", "KutoolsforExcel", Type:=8)
If colDate Is Nothing Then Exit Sub
On Error GoTo DateError
StartDate = CDate(Application.InputBox("Enter the start date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
EndDate = CDate(Application.InputBox("Enter the end date (yyyy-mm-dd):", "KutoolsforExcel", "", Type:=2))
On Error GoTo 0
On Error Resume Next
Set wsDest = Worksheets("FilteredRecords")
On Error GoTo 0
If wsDest Is Nothing Then
Set wsDest = Worksheets.Add
wsDest.Name = "FilteredRecords"
rngTable.Rows(1).Copy
wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
wsDest.Cells(1, 1).PasteSpecial Paste:=xlPasteFormats
End If
destRow = wsDest.Cells(wsDest.Rows.Count, 1).End(xlUp).Row + 1
dateColIndex = colDate.Column - rngTable.Columns(1).Column + 1
For i = 2 To rngTable.Rows.Count
cellDate = rngTable.Cells(i, dateColIndex).Value
If IsDate(cellDate) Then
If cellDate >= StartDate And cellDate <= EndDate Then
rngTable.Rows(i).Copy
wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
wsDest.Cells(destRow, 1).PasteSpecial Paste:=xlPasteFormats
destRow = destRow + 1
End If
End If
Next i
Application.CutCopyMode = False
wsDest.Columns.AutoFit
MsgBox "Filtered results have been added to '" & wsDest.Name & "'.", vbInformation
Exit Sub
DateError:
MsgBox "Invalid date format. Please enter dates as yyyy-mm-dd.", vbExclamation
End Sub
2. Makroyu çalıştırmak için tıklayın (Çalıştır) butonuna basın veya F5.
Sonra adımları tamamlamak için talimatları izleyin:
- Veri tablosunu seçin (başlıklar dahil) İlk giriş kutusu göründüğünde, başlık satırı dahil olmak üzere tüm tabloyu seçin. Tamam'a tıklayın.
- Tarih sütununu seçin (başlık dahil) İkinci giriş kutusu göründüğünde, yalnızca başlık dahil olmak üzere tarih sütununu seçin. Tamam'a tıklayın.
- Başlangıç ve bitiş tarihlerini girin Başlangıç tarihini girmeniz istenecek (format: yyyy-aa-gg, örn., 2025-06-01)Ardından bitiş tarihini girin (örn., 2025-06-30)Her birinden sonra Tamam'a tıklayın.
FilteredRecords adlı bir çalışma sayfası otomatik olarak oluşturulacaktır (henüz mevcut değilse). Başlangıç ve bitiş tarihleri arasında kalan tarihlerin bulunduğu eşleşen satırlar bu sayfaya kopyalanacaktır. Makroyu her çalıştırdığınızda yeni eşleşen satırlar mevcut sonuçların altına eklenecektir.
Sorun Giderme:
- Çalıştırdıktan sonra hiçbir şey olmazsa, seçilen aralıkları kontrol edin—geçersiz aralıklar veya iptal edilen diyaloglar makronun çıkışına neden olur.
- Tarih sütununuzdaki girişlerin gerçek Excel tarihleri olduğundan emin olun; eğer metin olarak saklanıyorsa, önce bunları doğru filtreleme için dönüştürün.
Senaryo Analizi: Bu VBA çözümü, özellikle tekrarlayan görevler, gelişmiş iş akışları veya teknik olmayan kullanıcılarla yarı otomatik bir çözüm paylaşırken değerlidir—daha da kolay bir işlem için bir düğmeye atayabilirsiniz.
Diğer Yerleşik Excel Yöntemleri - Excel'in yerleşik Filtre özelliğini kullanın
Formül veya kod yazmadan basit ve etkileşimli bir yaklaşımı tercih eden kullanıcılar için, Excel'in yerleşik Filtre özelliği, iki tarih arasındaki satırları hızlıca görüntülemek ve çıkarmak için pratik bir yol sunar. Bu, nadiren yapılan görevler, görsel kontrol veya çalışma sayfası arabiriminde doğrudan çalışmanız gerektiğinde idealdir. Ancak tarih kriterleriniz veya verileriniz değişirse otomatik güncellemeler sağlamaz—her yeni filtreleme oturumu için adımları tekrarlamalısınız.
İşte nasıl kullanılır:
- Sütun başlıklarını da içerecek şekilde veri aralığınızı seçin.
- Şeritteki Veri sekmesine gidin ve ardından Filtre'ye tıklayın. Her başlığın yanında küçük açılır oklar görünecektir.
- Tarih sütununun yanındaki oka tıklayın ve Tarih Filtreleri > Arasında... seçeneğini seçin.
- Açılan pencerede, istediğiniz başlangıç ve bitiş tarihlerini girin. Formatın verilerinizdeki tarih formatıyla eşleştiğinden emin olun.
- Tamam'a tıklayın. Sadece belirttiğiniz aralıktaki tarihleri içeren satırlar görünür kalacaktır.
- Görünür tüm satırları seçin, Ctrl + C tuşlarına basarak kopyalayın, boş bir alana veya başka bir sayfaya gidin ve Ctrl + V tuşlarına basarak filtrelenmiş sonuçları yapıştırın.
İpuçları ve Önlemler:
- Bu yöntem, hızlı ve görsel inceleme veya ad-hoc çıkarma için en iyisidir.
- Tarih sütununuz tutarsız formatlar kullanıyorsa, filtrenin doğru çalıştığından emin olmak için bunları önceden düzeltin.
- İşi bittiğinde filtreyi temizlemeyi unutmayın, böylece tüm veri seti tekrar görünür hale gelir.
- Filtrelenmiş satırlar gizlenir, silinmez—orijinal verileriniz bozulmamış olarak kalır.
Senaryo Analizi: Excel'in yerleşik Filtresi orta büyüklükteki tablolar için ve formüller veya makrolar kaydetmeden alt kümeleri anında önizlemek veya kopyalamak istediğinizde en uygundur.
Sorun Giderme ve Özet Öneriler:
- Tüm çözümlerin doğru çalışması için çalışma sayfası genelinde tarih hücrelerinin tutarlı bir şekilde biçimlendirildiğinden her zaman emin olun.
- Formüller veya VBA kullanırken, indeks veya referans hatalarını önlemek için sütun ve aralık referanslarını sayfanızın gerçek yapısına göre ayarlayın.
- Çok büyük veri setlerinde performans açısından, Kutools veya yerleşik filtreleme genellikle daha hızlı sonuçlar sunar ve kapsamlı dizi formüllerine kıyasla bellek/formül hesaplama limitlerini aşma ihtimali daha düşüktür.
- Çıktıda beklenmedik boşluklar veya eksik kayıtlarla karşılaşırsanız, tarih koşullarınızın, giriş aralıklarınızın ve veri formatlarınızın amaçlanan şekilde ayarlandığından emin olmak için iki kez kontrol edin.
Demo: Kutools for Excel ile iki tarih arasındaki tüm kayıtları çıkarma
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi güçlendirin ve benzersiz bir verimlilik deneyimi yaşayın. Kutools for Excel, üretkenliği artırmak ve zamandan tasarruf etmek için300'den fazla Gelişmiş Özellik sunuyor. İhtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Ofis uygulamalarına sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır.
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma işlevini etkinleştirin.
- Yeni pencereler yerine aynı pencerede yeni sekmelerde birden fazla belge açıp oluşturun.
- Verimliliğinizi %50 artırır ve her gün yüzlerce mouse tıklaması azaltır!
Tüm Kutools eklentileri. Tek kurulum
Kutools for Office paketi, Excel, Word, Outlook & PowerPoint için eklentileri ve Office Tab Pro'yu bir araya getirir; Office uygulamalarında çalışan ekipler için ideal bir çözümdür.





- Hepsi bir arada paket — Excel, Word, Outlook & PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans — dakikalar içinde kurulun (MSI hazır)
- Birlikte daha verimli — Ofis uygulamalarında hızlı üretkenlik
- 30 günlük tam özellikli deneme — kayıt yok, kredi kartı yok
- En iyi değer — tek tek eklenti almak yerine tasarruf edin