Excel hücresindeki bir metin dizisinden yinelenen karakterleri veya kelimeleri nasıl kaldırılır?
Excel'de verilerle çalışırken, hücrelerde tekrar eden karakterler veya yinelenen kelimeler bulunan durumlarla karşılaşmak oldukça yaygındır. Örneğin, kullanıcı tarafından üretilen girdileriniz, dışa aktarılan günlükleriniz veya karakterlerin veya kelimelerin birden çok kez görünebileceği ürün kodlarınız olabilir. Bu yinelenen öğeleri kaldırmak, verilerinizi temizlemenize, daha fazla analiz için okunabilirliği artırmaya veya dizeleri başka sistemlerde kullanılmak üzere hazırlamaya yardımcı olabilir.
Bu kılavuz, tek bir hücre içindeki yinelenen karakterleri veya yinelenen kelimeleri kaldırmak için birkaç yöntem sunar. Excel sürümünüze, teknik rahatlığınıza ve verilerinizde kullanılan ayraç türüne bağlı olarak en uygun çözümü seçebilirsiniz. Verileriniz bireysel karakterlerden veya boşluklar veya noktalama işaretleriyle ayrılmış tüm kelimelerden oluşsa bile, aşağıda kullanabileceğiniz pratik bir yaklaşım bulunmaktadır.
- Excel Formülü (Dinamik Dizi) kullanarak yinelenen karakterleri veya kelimeleri kaldırma
- Kullanıcı Tanımlı İşlev ile metin dizisindeki yinelenen karakterleri kaldırma
- Kullanıcı Tanımlı İşlev ile noktalama işaretleriyle ayrılmış yinelenen kelimeleri kaldırma
Excel Formülü (Dinamik Dizi) kullanarak yinelenen karakterleri veya kelimeleri kaldırma
Microsoft 365 veya Excel 2021 ve üzerini kullanıyorsanız, VBA'ya hiç gerek kalmadan bir hücreden yinelenen karakterleri veya kelimeleri kaldırmak için dinamik dizi formüllerinden yararlanabilirsiniz. TEXTSPLIT, UNIQUE, TEXTJOIN ve MID gibi bu işlevler, çalışma sayfanızda diziyi bölme, yinelenenleri kaldırma ve yeniden birleştirme işlemini kolayca yapmanızı sağlar.
Bu yöntem, özellikle makroları kullanmayı tercih etmeyen, verimli bir çözüm arayan ve Excel'in en son formül özelliklerine hakim olan kullanıcılar için önerilir.
Avantajlar: Kaynak veri değiştiğinde anında yeniden hesaplar, makro etkinleştirme veya özel izinlere gerek yoktur, formül büyük veri aralıklarına kolayca uygulanabilir.
Dezavantajlar: Yalnızca Microsoft 365, Excel 2021 veya daha yeni sürümlerde çalışır (Excel 2019 veya önceki sürümlerde çalışmaz).
Bir hücre içindeki yinelenen karakterleri kaldırma (örneğin, "banana" → "ban"):
1. Sonucu göstermek istediğiniz hücreyi seçin (örneğin, kaynak hücrenizin yanındaki B2 hücresi A2) ve aşağıdaki formülü girin:
=TEXTJOIN("",,UNIQUE(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)))
Bu formül, A2'nin içeriğini tek tek karakterlere MID işleviyle ayırır, ROW(INDIRECT(...)) ile sıralı pozisyonlar oluşturur, UNIQUE ile benzersiz karakterleri çıkarır ve ardından bunları TEXTJOIN ile bir metin dizisi halinde yeniden birleştirir.
2. Enter tuşuna basın. Formül sonucu, A2'deki dizideki yinelenen karakterlerin kaldırıldığını ve sıranın korunduğunu gösterecektir. Aynı işlemi diğer satırlara uygulamak için, formülü gereken şekilde aşağı doğru sürükleyin.
Not: #AD? hatası görüyorsanız, Excel sürümünüz bu işlevleri desteklemiyor olabilir. Lütfen Microsoft 365 veya Excel 2021 veya daha yeni bir sürüm kullandığınızı kontrol edin.
Sorun Giderme: Bazen fazladan boşluklar veya noktalama işaretleri sonuçları etkileyebilir. Verileriniz tutarlı bir şekilde biçimlendirilmemişse TRIM veya TEXTSPLIT'i ek argümanlarla kullanmayı düşünün.
Dinamik dizi formülleri kullanmak, iş akışınızı verimli ve güncel tutmanıza yardımcı olur ve hem basit hem de karmaşık dize desenleri için veri temizleme görevlerini basitleştirir.
Kullanıcı Tanımlı İşlev ile metin dizisinin yinelenen karakterlerini kaldırma
Metin dizileri içeren bir hücre aralığınız varsa ve her hücreden yinelenen karakterleri kaldırmak istiyorsanız—örneğin, "aabbcc"yi aşağıda gösterildiği gibi "abc"ye dönüştürmek istiyorsanız—özel bir VBA işlevi bu işlemi hızlıca gerçekleştirmenize yardımcı olabilir, özellikle Excel sürümünüz gelişmiş dizi formüllerini desteklemiyorsa.
1. ALT + F11 tuşlarına basılı tutarak Microsoft Visual Basic for Applications penceresini açın.
2. Ekle > Modül'e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın. Kodu, mümkünse çakışmaları önlemek için modülün başına yakın bir yere eklediğinizden emin olun.
VBA kodu: Bir hücredeki metin dizisinin yinelenen karakterlerini kaldırma
Function RemoveDupes1(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
xChar = VBA.Mid(xValue, i, 1)
If xDic.Exists(xChar) Then
Else
xDic(xChar) = ""
xOutValue = xOutValue & xChar
End If
Next
RemoveDupes1 = xOutValue
End Function
3. VBA kod penceresini kaydedip kapattıktan sonra, çalışma sayfanıza geri dönün. Orijinal metninizin yanındaki boş bir hücreye şu formülü girin: =removedupes1(A2) (burada A2, işlemek istediğiniz dizeyi içeren hücredir). Aşağıdaki görselde gösterildiği gibi:
4. Enter tuşuna basarak sonucu hesaplayın. İşlevi sütundaki diğer ilgili tüm hücrelere uygulamak için dolgu tutamacını aşağı doğru sürükleyin ve her bir hücreden tüm yinelenen karakterlerin hemen kaldırıldığını göreceksiniz.
İpucu: Görünüm sırası korunur—işlev her karakterin ilk görünümünü korur ve hücre içindeki sonraki yinelenenleri kaldırır.
Önleme: VBA yoluyla eklenen Kullanıcı Tanımlı İşlevler (UDF'ler), yalnızca kodun depolandığı çalışma kitabında kullanılabilir. Çalışma kitabınızı taşırsanız veya paylaşsanız, makronun hedef dosyaya dahil edildiğinden veya yeniden eklendiğinden emin olun. Ayrıca, kodun çalışması için makroların etkinleştirilmiş olması gerekir.

Kutools AI ile Excel Sihirini Keşfedin
- Akıllı Yürütme: Hücre işlemleri gerçekleştirin, verileri analiz edin ve grafikler oluşturun—tümü basit komutlarla sürülür.
- Özel Formüller: İş akışlarınızı hızlandırmak için özel formüller oluşturun.
- VBA Kodlama: VBA kodunu kolayca yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri kolayca anlayın.
- Metin Çevirisi: Elektronik tablolarınız içindeki dil engellerini aşın.
Kullanıcı Tanımlı İşlev ile noktalama işaretleriyle ayrılmış yinelenen kelimeleri kaldırma
Verileriniz noktalama işaretleriyle ayrılmış kelimelerden oluşuyorsa—örneğin virgüller, noktalı virgüller veya diğer semboller—her hücredeki yinelenen kelimeleri kaldırmak isteyebilirsiniz, ancak her kelimenin yalnızca ilk örneğini koruyarak. Bu, etiket listeleri, kategoriler veya adresler için özellikle kullanışlıdır. Bu işlemi, özelleştirilmiş bir VBA işlevi kullanarak verimli bir şekilde gerçekleştirebilirsiniz.
1. ALT + F11 tuşlarına basılı tutarak Microsoft Visual Basic for Applications penceresini açın.
2. Ekle Insert > Module'e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın. Açıklık açısından mümkünse kodu yeni bir modülün başına yerleştirin.
VBA kodu: Noktalama işaretleriyle ayrılmış bir hücrenin yinelenen kelimelerini kaldırma
Function RemoveDupes2(txt As String, Optional delim As String = " ") As String
Dim x
'Updateby Extendoffice
With CreateObject("Scripting.Dictionary")
.CompareMode = vbTextCompare
For Each x In Split(txt, delim)
If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
Next
If .Count > 0 Then RemoveDupes2 = Join(.keys, delim)
End With
End Function
3. VBA penceresini kaydedip kapattıktan sonra, çalışma sayfanıza geri dönün. Verilerinizin yanındaki boş bir sütunda şu formülü girin: =RemoveDupes2(A2,","). Burada A2 hedef hücrenizi ifade eder ve "," ayraç olarak kullanılan noktalama işaretini belirtir. Kelimeleriniz farklı bir noktalama işaretiyle ayrılıyor ise bu virgülü değiştirebilirsiniz (örneğin ";" veya boşluk gibi).
4. Onaylamak için Enter tuşuna basın, ardından formülü aşağı doğru sürükleyerek diğer hücreleri doldurun. Bu adımdan sonra, tüm yinelenen kelimeler ilgili hücrelerden kaldırılır ve benzersiz kelimeler orijinal sırayla kalır. Sonuç aşağıda gösterilmiştir:
Not: Formülde, hücre referansını ve noktalama ayracını verilerinize uygun olarak değiştirebilirsiniz. Birden fazla karakter veya farklı türde ayraçlar (örneğin boşluk ve virgül birleşimi) kullanılıyorsa, kodun daha fazla ayarlanması gerekebilir.
İpucu: Tüm VBA makroları gibi, çalışma kitabınızın bir yedeğini saklamayı unutmayın ve bu işlevi kullanmak için makroları etkinleştirin.
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