Excel'de Hücre Değerine (veya Koşuluna) Dayalı Satırları Silme (Kolay Kılavuz)

Büyük veri kümeleriyle çalışırken, içindeki hücre değerlerine (veya bir koşula göre) göre satırları hızlı bir şekilde silmeniz gerekebilir.

Örneğin, aşağıdaki örnekleri göz önünde bulundurun:

  1. Satış temsilcisi verileriniz var ve belirli bir bölge veya ürün için tüm kayıtları silmek istiyorsunuz.
  2. Satış değeri 100'den küçük olan tüm kayıtları silmek istiyorsunuz.
  3. Boş bir hücrenin olduğu tüm satırları silmek istiyorsunuz.

Excel'de bu veri kedisini kaplamanın birden çok yolu vardır.

Satırları silmek için seçeceğiniz yöntem, verilerinizin nasıl yapılandırıldığına ve bu satırları silmek istediğiniz hücre değeri veya koşulunun ne olduğuna bağlı olacaktır.

Bu öğreticide, bir hücre değerine veya bir koşula dayalı olarak Excel'deki satırları silmenin birden çok yolunu göstereceğim.

Değer/Koşul bazında Satırları Filtreleyin ve Sonra Silin

Belirli bir değeri içeren veya belirli bir koşulu yerine getiren satırları silmenin en hızlı yollarından biri bunları filtrelemektir. Filtrelenmiş verilere sahip olduğunuzda, tüm bu satırları silebilirsiniz (kalan satırlar olduğu gibi kalırken).

Excel filtresi oldukça çok yönlüdür ve birçok kritere göre (metin, sayı, tarih ve renk gibi) filtreleme yapabilirsiniz.

Satırları filtreleyip silebileceğiniz iki örnek görelim.

Belirli bir metni içeren Satırları Sil

Diyelim ki aşağıda gösterildiği gibi bir veri kümeniz var ve bölgenin Orta Batı olduğu tüm satırları (Sütun B'de) silmek istiyorsunuz.

Bu küçük veri kümesinde bu satırları manuel olarak silmeyi seçebilirsiniz, ancak genellikle veri kümeleriniz çok büyük olacaktır ve satırları manuel olarak silme bir seçenek olmayacaktır.

Bu durumda, bölgenin Orta Batı olduğu tüm kayıtları filtreleyebilir ve ardından tüm bu satırları silebilirsiniz (diğer satırları sağlam tutarken).

Değere göre satırları silme adımları aşağıdadır (tüm Orta Batı kayıtları):

  1. Satırları silmek istediğiniz veri kümesindeki herhangi bir hücreyi seçin
  2. Veri sekmesine tıklayın
  3. 'Sırala ve Filtrele' grubunda Filtre simgesine tıklayın. Bu, veri kümesindeki tüm başlık hücrelerine filtreler uygular
  4. Bölge başlık hücresindeki Filtre simgesine tıklayın (bu, hücrenin sağ üst köşesindeki aşağıyı gösteren küçük bir üçgen simgedir)
  5. Orta Batı seçeneği dışındaki tüm diğer seçeneklerin seçimini kaldırın (bunu yapmanın hızlı bir yolu, Tümünü Seç seçeneğine ve ardından Orta Batı seçeneğine tıklamaktır). Bu, veri kümesini filtreleyecek ve size yalnızca Orta Batı bölgesi için kayıtları gösterecektir.
  6. Filtrelenmiş tüm kayıtları seçin
  7. Seçili hücrelerden herhangi birine sağ tıklayın ve 'Satırı Sil'e tıklayın
  8. Açılan iletişim kutusunda, Tamam'a tıklayın. Bu noktada, veri kümesinde hiçbir kayıt görmeyeceksiniz.
  9. Veri sekmesine tıklayın ve Filtre simgesine tıklayın. Bu, filtreyi kaldıracak ve silinenler dışındaki tüm kayıtları göreceksiniz.

Yukarıdaki adımlar önce verileri bir hücre değerine göre filtreler (veya bir tarihten sonra/önce veya bir sayıdan büyük/küçük gibi başka bir koşul olabilir). Kayıtları aldıktan sonra, bunları silmeniz yeterlidir.

Süreci hızlandırmak için bilmeniz gereken bazı yararlı kısayollar:

  1. Kontrol + Üst Karakter + L filtreyi uygulamak veya kaldırmak için
  2. Kontrol + - (kontrol tuşunu basılı tutun ve eksi tuşuna basın) seçili hücreleri/satırları silmek için

Yukarıdaki örnekte, yalnızca dört farklı bölgem vardı ve bunu Filtre listesinden manuel olarak seçip seçimini kaldırabiliyordum (yukarıdaki 5. adımda).

Çok sayıda kategoriniz/bölgeniz varsa, adı kutunun (bu bölge adlarını içeren) hemen üstündeki alana yazabilirsiniz ve Excel size yalnızca girilen metinle eşleşen kayıtları gösterecektir (aşağıda gösterildiği gibi). Filtrelemek istediğiniz metne sahip olduğunuzda, Enter tuşuna basın.

Bir satırı sildiğinizde, bu satırlardaki diğer hücrelerde olabilecek her şeyin kaybolacağını unutmayın. Bunu aşmanın bir yolu, başka bir çalışma sayfasındaki verilerin bir kopyasını oluşturmak ve kopyalanan verilerdeki satırları silmektir. Tamamlandığında, orijinal verilerin yerine geri kopyalayın.

Veya

Bu öğreticide daha sonra gösterilen yöntemleri kullanabilirsiniz (Sıralama yöntemini veya Tümünü Bul Yöntemini kullanarak)

Sayısal Bir Koşul Bazında Satırları Sil

Mid-West metnini içeren tüm satırları silmek için filtre yöntemini kullandığım gibi, bir sayı koşulu (veya bir tarih koşulu) da kullanabilirsiniz.

Örneğin, aşağıdaki veri setine sahip olduğumu ve satış değerinin 200'den az olduğu tüm satırları silmek istediğimi varsayalım.

Bunu yapmak için gereken adımlar aşağıdadır:

  1. Verideki herhangi bir hücreyi seçin
  2. Veri sekmesine tıklayın
  3. 'Sırala ve Filtrele' grubunda Filtre simgesine tıklayın. Bu, veri kümesindeki tüm başlık hücrelerine filtreler uygular
  4. Satış başlığı hücresindeki Filtre simgesine tıklayın (bu, hücrenin sağ üst köşesindeki aşağıyı gösteren küçük bir üçgen simgedir)
  5. İmleci Sayı Filtreleri seçeneğinin üzerine getirin. Bu size Excel'deki tüm sayılarla ilgili filtre seçeneklerini gösterecektir.
  6. 'Daha az' seçeneğine tıklayın.
  7. Açılan 'Özel Otomatik Filtre' iletişim kutusunda, alana '200' değerini girin
  8. Tamam'ı tıklayın. Bu, yalnızca satış değerinin 200'den az olduğu kayıtları filtreleyecek ve gösterecektir.
  9. Filtrelenmiş tüm kayıtları seçin
  10. Herhangi bir hücreye sağ tıklayın ve Satırı Sil'e tıklayın
  11. Açılan iletişim kutusunda, Tamam'a tıklayın. Bu noktada, veri setinde hiçbir kayıt görmeyeceksiniz.
  12. Veri sekmesine tıklayın ve Filtre simgesine tıklayın. Bu, filtreyi kaldıracak ve silinenler dışındaki tüm kayıtları göreceksiniz.

Excel'de kullanabileceğiniz birçok sayı filtresi vardır - küçüktür/büyüktür, eşittir/eşit değildir, arasında, ilk 10, ortalamanın üstünde veya altında vb.

Not: Birden fazla filtre de kullanabilirsiniz. Örneğin, satış değerinin 200'den büyük ancak 500'den küçük olduğu tüm satırları silebilirsiniz. Bu durumda iki filtre koşulu kullanmanız gerekir. Özel Otomatik Filtre iletişim kutusu, iki filtre kriterine (VE'nin yanı sıra VEYA) sahip olmanızı sağlar.

Sayı filtreleri gibi kayıtları da tarihe göre filtreleyebilirsiniz. Örneğin, ilk çeyreğe ait tüm kayıtları kaldırmak istiyorsanız, yukarıdaki adımların aynısını kullanarak bunu yapabilirsiniz. Tarih filtreleriyle çalışırken, Excel size otomatik olarak ilgili filtreleri gösterir (aşağıda gösterildiği gibi).

Filtreleme, bir değere veya koşula dayalı olarak satırları hızlı bir şekilde silmek için harika bir yol olsa da, bir dezavantajı vardır - tüm satırı siler. Örneğin, aşağıdaki durumda, filtrelenmiş veri kümesinin sağındaki tüm verileri siler.

Ya yalnızca veri kümesinden kayıtları silmek istiyorsam, ancak kalan verileri olduğu gibi tutmak istiyorsam.

Bunu filtreleme ile yapamazsınız, ancak sıralama ile yapabilirsiniz.

Veri Kümesini Sıralayın ve Ardından Satırları Silin

Sıralama, değere göre satırları silmenin başka bir yolu olsa da, çoğu durumda yukarıda ele alınan filtre yöntemini kullanmanız daha iyi olur.

Bu sıralama tekniği, yalnızca tüm satırları değil, değerleri içeren hücreleri silmek istediğinizde önerilir.

Diyelim ki aşağıda gösterildiği gibi bir veri kümeniz var ve bölgenin Mid-west olduğu tüm kayıtları silmek istiyorsunuz.

Sıralamayı kullanarak bunu yapmak için gereken adımlar aşağıdadır:

  1. Verideki herhangi bir hücreyi seçin
  2. Veri sekmesine tıklayın
  3. Sırala ve Filtrele grubunda Sırala simgesine tıklayın.
  4. Açılan Sırala iletişim kutusunda, sıralama ölçütü sütununda Bölge'yi seçin.
  5. Sırala seçeneğinde, Hücre Değerlerinin seçili olduğundan emin olun.
  6. Sıra seçeneğinde A'dan Z'ye (veya Z'den A'ya, gerçekten önemli değil) seçin.
  7. Tamam'ı tıklayın. Bu size aşağıda gösterildiği gibi sıralanmış veri setini verecektir (B sütununa göre sıralanmıştır).
  8. Orta Batı bölgesi ile tüm kayıtları seçin (sadece bölge sütunu değil, satırlardaki tüm hücreler)
  9. Seçildikten sonra, sağ tıklayın ve ardından Sil'e tıklayın. Bu, Sil iletişim kutusunu açacaktır.
  10. 'Hücreleri yukarı kaydır' seçeneğinin seçili olduğundan emin olun.
  11. Tamam'ı tıklayın.

Yukarıdaki adımlar, bölgenin Orta Batı olduğu tüm kayıtları siler, ancak tüm satırı silmez. Bu nedenle, veri kümenizin sağında veya solunda herhangi bir veriniz varsa, zarar görmeden kalacaktır.

Yukarıdaki örnekte, verileri hücre değerine göre sıraladım, ancak aynı adımları sayılara, tarihlere, hücre rengine veya yazı tipi rengine vb. göre sıralamak için de kullanabilirsiniz.

Excel'de verilerin nasıl sıralanacağına dair ayrıntılı bir kılavuz
Orijinal veri seti sırasını korumak, ancak ölçütlere göre kayıtları kaldırmak istemeniz durumunda, verileri orijinal olana geri sıralamanın bir yolunun olması gerekir. Bunu yapmak için, verileri sıralamadan önce seri numaralarına sahip bir sütun ekleyin. Satırları/kayıtları silmeyi bitirdikten sonra, eklediğiniz bu fazladan sütunu kullanarak basitçe sıralama yapın.

Hücre Değerine Göre Hücreleri Bulun ve Seçin ve Ardından Satırları Silin

Excel, belirli bir değere sahip hücreleri bulmak ve seçmek istediğinizde harika olabilecek bir Bul ve Değiştir işlevine sahiptir.

Bu hücreleri seçtikten sonra satırları kolayca silebilirsiniz.

Diyelim ki aşağıda gösterildiği gibi bir veri setiniz var ve bölgenin Orta Batı olduğu tüm satırları silmek istiyorsunuz.

Bunu yapmak için gereken adımlar aşağıdadır:

  1. Tüm veri kümesini seçin
  2. Ana Sayfa sekmesine tıklayın
  3. Düzenleme grubunda, 'Bul ve Seç' seçeneğine tıklayın ve ardından Bul'a tıklayın (klavye kısayolu Control + F'yi de kullanabilirsiniz).
  4. Bul ve Değiştir iletişim kutusunda, 'Neyi bul:' alanına 'Orta Batı' metnini girin.
  5. Tümünü Bul'a tıklayın. Bu, Excel'in bulabildiği Orta Batı metninin tüm örneklerini anında size gösterecektir.
  6. Excel'in bulduğu tüm hücreleri seçmek için Control + A klavye kısayolunu kullanın. Ayrıca veri kümesinde seçilen tüm hücreleri görebileceksiniz.
  7. Seçili hücrelerden herhangi birine sağ tıklayın ve Sil'e tıklayın. Bu, Sil iletişim kutusunu açacaktır.
  8. 'Tüm satır' seçeneğini seçin
  9. Tamam'ı tıklayın.

Yukarıdaki adımlar, bölge değerinin Orta Batı olduğu tüm hücreleri siler.

Not: Bul ve Değiştir joker karakterleri işleyebildiğinden, Excel'de veri bulurken bunları kullanabilirsiniz. Örneğin, bölgenin Orta-Batı veya Güney-Batı olduğu tüm satırları silmek isterseniz, '*BatıBul ve Değiştir iletişim kutusunda bulunacak metin olarak. Bu size metnin Batı kelimesiyle bittiği tüm hücreleri verecektir.

Boş Hücreli Tüm Satırları Sil

Boş hücrelerin olduğu tüm satırları silmek isterseniz, bunu Excel'de yerleşik bir işlevsellik ile kolayca yapabilirsiniz.

Bu Özel Hücrelere Git seçenek - bu, tüm boş hücreleri hızlı bir şekilde seçmenizi sağlar. Ve tüm boş hücreleri seçtikten sonra, bunları silmek çok basittir.

Diyelim ki aşağıda gösterildiği gibi veri setiniz var ve satış değerine sahip olmadığım tüm satırları silmek istiyorum.

Bunu yapmak için gereken adımlar aşağıdadır:

  1. Tüm veri kümesini seçin (bu durumda A1:D16).
  2. basın F5 anahtar. Bu, 'Git' iletişim kutusunu açacaktır (Bu iletişim kutusunu Ana Sayfa -> Düzenleme -> Bul ve Seç -> Git'ten de alabilirsiniz).
  3. 'Git' iletişim kutusunda, Özel düğmesine tıklayın. Bu, 'Özel Git' iletişim kutusunu açacaktır.
  4. Özel Git iletişim kutusunda, 'Boşluklar'ı seçin.
  5. Tamam'ı tıklayın.

Yukarıdaki adımlar, veri kümesinde boş olan tüm hücreleri seçer.

Boş hücreleri seçtikten sonra, hücrelerden herhangi birine sağ tıklayın ve Sil'e tıklayın.

Sil iletişim kutusunda, 'Tüm satır' seçeneğini seçin ve Tamam'ı tıklayın. Bu, içinde boş hücreler bulunan tüm satırları siler.

Bu teknik hakkında daha fazla bilgi edinmek istiyorsanız, boş hücreli satırların nasıl silineceği hakkında ayrıntılı bir eğitim yazdım. Boş hücreli satırları silmek için bir VBA yönteminin yanı sıra 'Özel Git' yöntemini içerir.

Hücre Değerine Göre Satırları Filtreleme ve Silme (VBA kullanarak)

Size göstereceğim son yöntem biraz VBA içeriyor.

Bir sütundaki belirli bir değere dayalı olarak satırları sık sık silmeniz gerekiyorsa bu yöntemi kullanabilirsiniz. VBA kodunu bir kez ekleyebilir ve Kişisel Makro çalışma kitabınıza ekleyebilirsiniz. Bu şekilde tüm Excel çalışma kitaplarınızda kullanıma hazır olacaktır.

Bu kod, yukarıda ele alınan Filtre yöntemiyle aynı şekilde çalışır (bunun arka uçtaki tüm adımları yapması ve size bazı tıklamalardan tasarruf etmesi dışında).

Diyelim ki aşağıda gösterildiği gibi bir veri setiniz var ve bölgenin Mid-West olduğu tüm satırları silmek istiyorsunuz.

Bunu yapacak VBA kodu aşağıdadır.

Sub DeleteRowsWithSpecificText() 'Source:https://trumpexcel.com/delete-rows-based-on-cell-value/ ActiveCell.AutoFilter Field:=2, Criteria1:="Mid-West" ActiveSheet.AutoFilter.Range.Offset (1, 0).Rows.SpecialCells(xlCellTypeVisible).Delete End Sub

Yukarıdaki kod, satırları önce belirtilen kriterlere göre ("Orta Batı" olan) filtrelemek için VBA Otomatik Filtre yöntemini kullanır, ardından filtrelenmiş tüm satırları seçip silin.

Başlık satırımın silinmediğinden emin olmak için yukarıdaki kodda Offset kullandığımı unutmayın.

Verileriniz bir Excel Tablosundaysa yukarıdaki kod çalışmaz. Bunun nedeni, Excel'in bir Excel Tablosunu liste nesnesi olarak kabul etmesidir. Bu nedenle, bir Tablodaki satırları silmek istiyorsanız, kodu biraz değiştirmeniz gerekir (bu eğitimde daha sonra anlatılacaktır).

Satırları silmeden önce, aşağıda gösterildiği gibi size bir istem gösterecektir. Silmeden önce filtrelenmiş satırı iki kez kontrol etmeme izin verdiği için bunu faydalı buluyorum.

VBA kullanarak satırları sildiğinizde bu değişikliği geri alamayacağınızı unutmayın. Bu yüzden bunu yalnızca istediğiniz şekilde çalıştığından emin olduğunuzda kullanın. Ayrıca, bir şeyler ters giderse diye verilerin yedek bir kopyasını saklamak da iyi bir fikirdir.

Verilerinizin bir Excel Tablosunda olması durumunda, içinde belirli bir değer bulunan satırları silmek için aşağıdaki kodu kullanın:

Sub DeleteRowsinTables() 'Source:https://trumpexcel.com/delete-rows-based-on-cell-value/ Dim Tbl As ListObject Set Tbl = ActiveSheet.ListObjects(1) ActiveCell.AutoFilter Field:=2, Criteria1: ="Orta Batı" Tbl.DataBodyRange.SpecialCells(xlCellTypeVisible).Delete End Sub

VBA, Excel Tablosunu bir Liste nesnesi (ve bir aralık değil) olarak gördüğünden, kodu buna göre değiştirmek zorunda kaldım.

VBA kodunu Nereye Koymalı?

Bu kodun bir modüldeki VB Düzenleyici arka ucuna yerleştirilmesi gerekir.

Bunu nasıl yapacağınızı gösteren adımlar aşağıdadır:

  1. Bu kodu eklemek istediğiniz çalışma kitabını açın.
  2. VBA Düzenleyici penceresini açmak için ALT + F11 klavye kısayolunu kullanın.
  3. Bu VBA Düzenleyici penceresinde, solda bir 'Proje Gezgini' bölmesi (tüm çalışma kitaplarını ve çalışma sayfası nesnelerini listeleyen) vardır. Çalışma kitabındaki (bu kodun çalışmasını istediğiniz) herhangi bir nesneye sağ tıklayın, imleci "Ekle"nin üzerine getirin ve ardından "Modül"e tıklayın. Bu, Modül nesnesini Çalışma Kitabına ekleyecek ve ayrıca sağdaki Modül kodu penceresini açacaktır.
  4. Modül penceresinde (sağda görünecek), yukarıdaki kodu kopyalayıp yapıştırın.

Kodu VB Editöründe aldıktan sonra, aşağıdaki yöntemlerden herhangi birini kullanarak kodu çalıştırabilirsiniz (veri kümesinde bu kodu çalıştırmak istediğiniz herhangi bir hücreyi seçtiğinizden emin olun):

  1. Kod içindeki herhangi bir satırı seçin ve F5 tuşuna basın.
  2. VB Düzenleyicisi'ndeki araç çubuğundaki Çalıştır düğmesine tıklayın
  3. Makroyu bir düğmeye veya şekle atayın ve çalışma sayfasının kendisinde tıklayarak çalıştırın
  4. Hızlı Erişim Araç Çubuğuna ekleyin ve kodu tek bir tıklama ile çalıştırın.

Excel'de makro kodunun nasıl çalıştırılacağı ile ilgili her şeyi bu makalede okuyabilirsiniz.

Not: Çalışma kitabı bir VBA makro kodu içerdiğinden, onu makro etkin biçimde (xlsm) kaydetmeniz gerekir.

wave wave wave wave wave