Excel’de üç sütundaki ortak değerleri nasıl bulabilirim?
Excel’de veriyle çalışırken, genellikle ortak veya yinelenen kayıtları belirlemek için listeler karşılaştırılır. İki sütunu karşılaştırarak ortak değerleri bulmak sıkça karşılaşılan bir iştir; ancak bazen aynı anda üç ayrı sütunda yer alan ortak değerleri tespit etmeniz gerekebilir. Örneğin, anket verilerini birleştirirken, satış kayıtlarını entegre ederken ya da birden fazla listedeki yinelenen kayıtları analiz ederken, aşağıdaki ekran görüntüsünde gösterildiği gibi üç sütunun tamamında yer alan öğeleri doğru şekilde çıkarmak büyük önem taşır. Bu makalede, Excel’de bu soruna çözüm sunan birkaç pratik yöntem paylaşılmaktadır; böylece formüllerden mi yoksa VBA’dan mı yararlanacağınız seçimine göre, üç sütun arasındaki ortak değerleri verimli ve güvenilir bir şekilde belirleyebilirsiniz.

Dizi formülleriyle 3 sütundaki ortak değerleri bulun
Üç sütunun tamamında yer alan değerleri çıkarmak için VBA makrosu
Dizi formülleriyle 3 sütundaki ortak değerleri bulun
Üç sütundaki ortak değerleri bulup çıkarmak için, belirtilen aralıktaki tüm öğeleri taramak üzere tasarlanmış dizi formüllerinden yararlanabilirsiniz. Bu yöntem, ek Excel eklentilerine veya harici araçlara bağlı kalmak istemediğiniz veri kümelerinde özellikle etkilidir.
İlk ortak değeri görüntülemek istediğiniz boş bir hücreye aşağıdaki dizi formülünü girin:
=LOOKUP("zzz",CHOOSE({1,2},"",INDEX(A$2:A$10,MATCH(0,COUNTIF(E$1:E1,A$2:A$10)+IF(IF(COUNTIF(B$2:B$8,A$2:A$10)>,0,1,0)+IF(COUNTIF(C$2:C$9,A$2:A$10)>,0,1,0)=2,0,1),0)))) Bu dizi formülünü nasıl kullanırsınız:
- Formülü seçtiğiniz hücreye girdikten sonra Shift + Ctrl + Enter tuşlarına basın (yalnızca Enter’a basmayın). Excel, formülün bir dizi formülü olduğunu belirtmek için onu süslü parantezler içine alacaktır.
- Formülü, boş hücreler görünene kadar sütun boyunca aşağı doğru sürükleyin. Böylece üç sütunda da ortak olan tüm değerler listelenir; boş hücreler ise başka eşleşmenin olmadığını gösterir.

Notlar ve parametre açıklamaları:
- Farklı bir dizi formülü tercih ediyorsanız, aşağıdaki formül de üç sütunun tamamında yer alan tüm benzersiz değerleri döndürür:
Yine, formülü yazdıktan veya yapıştırdıktan sonra Shift + Ctrl + Enter tuşlarına basmayı unutmayın.=INDEX($A$2:$A$10, MATCH(0, COUNTIF($E$1:E1, $A$2:$A$10)+IF(IF(COUNTIF($B$2:$B$8, $A$2:$A$10)>,0,1,0)+IF(COUNTIF($C$2:$C$9, $A$2:$A$10)>,0,1,0)=2,0,1),0)) - Bu formüllerde:
- A2:A10, B2:B8 ve C2:C9, karşılaştırmak istediğiniz üç sütunun her birindeki aralıklardır.
- E1, formülün başladığı hücrenin hemen üstündeki hücreye işaret eder (dışlama mantığı için). Hücre referanslarını, gerçek AralıkNize ve sonuçların görünmesini istediğiniz konuma göre ayarlayın.
- Bu yöntemler orta büyüklükteki veri kümelerinde oldukça iyi performans gösterir; ancak dizi formüllerinin yüksek hesaplama yükü nedeniyle çok büyük hacimli verilerde yavaşlayabilir.
- Yolun yarısında Kaynak Aralığı’nı değiştirmekten kaçının; aksi takdirde yanlış sonuçlarla karşılaşabilir veya formül hataları oluşabilir.
- Sonuçlar arasında boş satırlar görünüyorsa, bu ortak tüm değerlerin çıkarıldığını ve kalan hücrelerde başka bir kesişimin olmadığını gösterir.

KUTOOLS AI ile Excel'in Sihirli Gücünü Açığa Çıkarın
- Akıllı Yürütme: Hücre işlemlerini gerçekleştirin, verileri analiz edin ve hepsi basit komutlarla çalışan grafikler oluşturun.
- Özel formüller: İş akışlarınızı kolaylaştırmak için özelleştirilmiş formüller oluşturun.
- VBA Kodlama: VBA kodlarını zahmetsizce yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri kolayca çözmek artık çok daha basit!
- Metin Çevirisi: Elektronik tablolarınızda dil bariyerlerini aşın.
Üç sütunun tamamında yer alan değerleri çıkarmak için VBA makrosu
Karmaşık formüller girmek veya kopyalamak zorunda kalmadan otomatik bir yaklaşım tercih ediyorsanız, verilerinizde döngü oluşturmak ve yalnızca üç sütunun her birinde yer alan değerleri çıktı olarak almak için Excel VBA’sını kullanabilirsiniz. Bu yöntem, özellikle çok büyük veri kümeleriyle veya dinamik aralıklarla çalışırken kullanışlıdır; çünkü VBA, tekrarlayan görevleri ve özel kriterleri işlemekte daha verimlidir.
1. VBA düzenleyicisini açmak için Geliştirici > Visual Basicseçeneğine tıklayın ()Geliştirici sekmesi görünmüyorsa, etkinleştirmek için Dosya > Seçenekler > Şeridi Özelleştir > Şerit yolunu izleyebilirsiniz).
2. VBA düzenleyicide yeni bir modül oluşturmak için Ekle > Modül seçeneğine tıklayın. Ardından aşağıdaki kodu modül penceresine yapıştırın:
Sub FindCommonValuesThreeColumns()
Dim dict1 As Object
Dim dict2 As Object
Dim dict3 As Object
Dim resultDict As Object
Dim rngA As Range
Dim rngB As Range
Dim rngC As Range
Dim cell As Range
Dim outputRow As Long
Dim key As Variant
On Error Resume Next
Set dict1 = CreateObject("Scripting.Dictionary")
Set dict2 = CreateObject("Scripting.Dictionary")
Set dict3 = CreateObject("Scripting.Dictionary")
Set resultDict = CreateObject("Scripting.Dictionary")
' Prompt the user to select the three column ranges
Set rngA = Application.InputBox("Select the first column range", "KutoolsforExcel", Selection.Address, Type:=8)
Set rngB = Application.InputBox("Select the second column range", "KutoolsforExcel", Selection.Address, Type:=8)
Set rngC = Application.InputBox("Select the third column range", "KutoolsforExcel", Selection.Address, Type:=8)
' Store all unique values from each column into corresponding dictionaries
For Each cell In rngA
If Not dict1.exists(cell.Value) And cell.Value <> "" Then
dict1.Add cell.Value, 1
End If
Next
For Each cell In rngB
If Not dict2.exists(cell.Value) And cell.Value <> "" Then
dict2.Add cell.Value, 1
End If
Next
For Each cell In rngC
If Not dict3.exists(cell.Value) And cell.Value <> "" Then
dict3.Add cell.Value, 1
End If
Next
' Check which values exist in all three dictionaries
For Each key In dict1.keys
If dict2.exists(key) And dict3.exists(key) Then
resultDict.Add key, 1
End If
Next
' Output result to next empty column on the active sheet
outputRow = 1
For Each key In resultDict.keys
Cells(outputRow, Columns.Count).End(xlToLeft).Offset(0, 1).Value = key
outputRow = outputRow + 1
Next
MsgBox "Common values extracted next to your data.", vbInformation, "KutoolsforExcel"
End Sub 3. Modül seçiliyken VBA penceresinde F5 tuşuna basın veya Çalıştır (▶) düğmesine tıklayarak kodu çalıştırın. Karşılaştırmak istediğiniz üç sütun aralığını sırayla seçmeniz istenecektir. Her istekte uygun hücreleri fareyle seçin.
4. Makro, seçimlerinizi işleyecek ve üç sütunun tamamında yer alan tüm değerleri mevcut veri kümenizin sağındaki ilk boş sütuna, ilk satırdan başlayarak aktaracaktır.
Bu yöntem, büyük veya dinamik veri kümeleriyle çalışırken verimlidir ve sözlük mantığı çoğaltılarak kolayca dört veya daha fazla sütuna genişletilebilir. Makroları çalıştırmadan önce çalışma kitabınızı kaydetmeyi unutmayın; geri dönmek isterseniz kaydedilmemiş değişiklikler geri alınamaz.
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