2 kolon arasındaki farklı olanları bulmak için formül

Katılım
3 Ocak 2007
Mesajlar
67
Excel Vers. ve Dili
Access hakkında yardım
Merhaba arkadaşlar.
Bir excel sayfasında 600 satırlık numara var diyelim.
Diğer excelde ise 550 satırlık.Arada olmayan 50 adet kolonu hemen nasıl tesbit edebiliri.

Ekte 2 excel bulunmakta.Description kısmındaki ile Order arasındaki farkı bulmak istiyorum.

88.xls de mesela 6 satır yok gibi.Bunlarda şudur gibi.

Saygılarımla
 
Katılım
13 Eylül 2004
Mesajlar
77
işemri dosyasına formulü kur bakalım işine yarayacakmı

=DÜŞEYARA(E2;'[88.xls]Sheet 1'!$A$2:$A$878;1;0)
 
Katılım
3 Ocak 2007
Mesajlar
67
Excel Vers. ve Dili
Access hakkında yardım
Merhaba Sayın du643,
Malesef çalışmadı.
İşletim sistemi ingilizce bu arada.
Saygılarımla.
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
Merhaba arkadaşlar.
Bir excel sayfasında 600 satırlık numara var diyelim.
Diğer excelde ise 550 satırlık.Arada olmayan 50 adet kolonu hemen nasıl tesbit edebiliri.

Ekte 2 excel bulunmakta.Description kısmındaki ile Order arasındaki farkı bulmak istiyorum.

88.xls de mesela 6 satır yok gibi.Bunlarda şudur gibi.

Saygılarımla

Dosyalarınız ekte olmuş mu?



Sayın nurcanuludag'ın özel mesajdan isteği üzerine, dosyadaki formüllerle ilgili açıklamayı aşağıda veriyorum.

1. Genel olarak bu tür benzeyen veya benzemeyenlerin bulunmasında bir yardımcı sütun kullanılır. Ve bu sütunda aranılan değerlerin satır numaraları tespit edilmeye çalışılır. Burada G sütunu yardımcı sütun seçilerek,aşağıdaki formülü G2'ye yazıdıktan sonra aşağıya veri uzunluğu kadar kopyalıyoruz.

=IF(E2="";"";IF(SUMPRODUCT(--ISNUMBER(SEARCH(E2;'C:\[88(1).xls]Sheet 1'!$A$2:$A$160)))>0;"";ROW()))

Bu formülle, 88(1).xls] dosyasındaki Sheet 1'!$A$2:$A$160)))>0 aralığında E2... ve alta gelen diğer hücrelerde yer alan değerleri test ediliyor varsa boşluk bırak yoksa satır numaralarını göster deniliyor.

Burada dikkat edilirse benzemeyenlerin satır numaraları ortaya cıkmış. Bunlar:55, 77, 78, 88, 90, 91'dir.

Bunlar bize yeterli değil. Bunların arasında boşluk var ve bizde satır numaralarını aramıyoruz. Bizim aradığımız bu satır numaralarında yer alan değerlerin boşluksuz olarak gösterilmesidir.

2. Bunu da esas formülümüz verecektir. Bu for mül de: H2 hücresinde yazılan ve aşağıya kopyalanan;

=IF(ISERROR(SMALL(G:G;ROW(A1)));"";INDEX(E:E;MATCH(SMALL(G:G;ROW(A1));G:G;0))) şeklindedir.

Bu formülde: G:G aralığına bak hatalı bir durum varsa boşluk bırak, değilse E:E'deki değerleri, G:G aralığında tespit edilen satır numaraları ile match et, tespit edilmiş bu satır numaralarına bağlı olarak küçüklük sırasına göre de match edilen değerleri göster denilmektedir.

Böylece tesbit edilen satır numaralarına G:G de karşılık gelen değerleri boşluksuz alt alta yazdırmış oluyoruz.
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
işemri dosyasındaki G2 hücresine aşağıdaki formülü kopyalayın ve bu formülü aşağı doğru kopyalayın.

=EĞER(EHATALIYSA(DÜŞEYARA(E2;'[88.xls]Sheet 1'!$A$2:$A$200;1;0))=DOĞRU;"MEVCUT DEĞİL";"")
 
Katılım
13 Eylül 2004
Mesajlar
77
88.xls dosyasını sheet2 ye yapıştırım formululü kurdum.
eğer dosyaları ayrı ayrı kullanacaksanız .Formuldeki 88 olan kısıma dosyanın adını tanımlayın.
düşeyara yerine vlookup kullanın

Biraz daha açarsak fx formul sihirbazından vlookup seçin formül sihirbazında
ilk gelen satıra aranacak değeri belirleyin (Description daki E sütun 2 satır)

ikinci satıra aranacak bölgeyi seçin ve $ işaretiyle sütun ve satırı kilitleyin(88.xls klasöründe a sütununda a2:a150)
üçüncü satıra hangi sütundan veri alınacağını belirleyen sayıyı yazın (eğer 1 yazarsanız a sütunundaki verileri alır 2 yazarsanız b sütunu 3-c........gibi
dördüncü satıra ise değerlerin birebir aynı olması için 0 yazın ve formulü aşağıya doğru kopyalayın
 
Katılım
3 Ocak 2007
Mesajlar
67
Excel Vers. ve Dili
Access hakkında yardım
Merhaba,
Çok teşekkür ederim Sayın Yurttaş Bey,Leventm Bey ve Sayın Du643 çalışıyor.
Saygılarımla....
 
Katılım
13 Şubat 2007
Mesajlar
82
Excel Vers. ve Dili
Microsoft Office 2003
Arkadaşlar her zamanki gibi yardımınıza ihitiyacım var.

Düşeyarama ile ilgili bir sorunum var arkadaşlar her zamanki gibi ,yardımınıza sunuyorum
:C5 hücresinde listelemede isimler çıkıyor.Soyadlarınıda formüle eklemek istiyorum formüle nasıl yazabiliriz bunu, formül şu şekilde ;
C5 HÜCRESİNDE ETKİLİ OLMASI İÇİN.
=EĞER(PersonelBilgileri!D4='''';'''';PersonelBilgileri!D4)
D4 de isimler, E4 dede soyisimleri var .C5 hücresine isimlerle beraber soyisimleri de getirmek için formülü nasıl düzenlemeliyim.
Selamlar.....
 
Son düzenleme:
Katılım
2 Mart 2007
Mesajlar
603
Excel Vers. ve Dili
2003
birleştir fonk. inceleyiniz
Veri doğrulamada listede iki sütun seçilemez.
Bunun için d ve e hücre değerlerini birleştiriniz.
 
Katılım
13 Şubat 2007
Mesajlar
82
Excel Vers. ve Dili
Microsoft Office 2003
Sayın conar

birleştir fonk. inceleyiniz
Veri doğrulamada listede iki sütun seçilemez.
Bunun için d ve e hücre değerlerini birleştiriniz.
Sn: conari
Personel listesinde süzme yapmak için ada ve sayoda sıralamada iki ayrı sütün gerektiği için birleştirmeden verileri aynı hücrenin içine eklemenin bir yolu olmalı diye düşünüyorum. Mümkün değilmidir bu Excel de.Selamlar
 
Son düzenleme:
Katılım
13 Şubat 2007
Mesajlar
82
Excel Vers. ve Dili
Microsoft Office 2003
Örnek Dosya ekte : Saygılar......

örnek bir dosya yollarmısınız
Arkadaşlar Sorunumla ilgili örnek dosya ekte . Excelin bu kadar çok özelliği varken bunu yapamazsa hayal kırıklığına uğrayacağım.Yardımcı olacak arkadaşlara şimdiden teşekkürlerimi sunmak istiyorum.
İyi çalışmalar...
 
Katılım
13 Şubat 2007
Mesajlar
82
Excel Vers. ve Dili
Microsoft Office 2003
Sn Yurttas Ellerinize sağlık.

Hocam sormadan edemeyeceğim bu nasıl oldu, yani olmaz denilen şey , hayretlar içindeyim.Daha önce C5 'e Liste ,Bilgi M hücresinden alırken değerleri şu an nerden aldığınıda açıklarsanız sizlerden bir şey daha öğrenmiş oluruz.
Sayın Yurttas: Excelde olmaz denilen şeyleri büyük bir ustalıkla çözmenizden dolayı size olan hayranlığım bir kez daha arttı.Ne diyebilirim ki Sn hocam emeğinize, bilginize sağlık.Bilginizi bizlerle paylaşıp, esirgemediğiniz ve yardımlarınız için tekrar teşekkürlerimi sunmak istiyorum.:hey:
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
Hocam sormadan edemeyeceğim bu nasıl oldu, yani olmaz denilen şey , hayretlar içindeyim.Daha önce C5 'e Liste ,Bilgi M hücresinden alırken değerleri şu an nerden aldığınıda açıklarsanız sizlerden bir şey daha öğrenmiş oluruz.
Sayın Yurttas: Excelde olmaz denilen şeyleri büyük bir ustalıkla çözmenizden dolayı size olan hayranlığım bir kez daha arttı.Ne diyebilirim ki Sn hocam emeğinize, bilginize sağlık.Bilginizi bizlerle paylaşıp, esirgemediğiniz ve yardımlarınız için tekrar teşekkürlerimi sunmak istiyorum.:hey:
1. personelbilgileri sayfasının Y sütununa ilgilinin ad ve soyadını birleştiren =D3&" "&E3 şeklinde bir formül yazdım ve bunu aşağıya doğru kopyaladım.
Bunu Personelbilgileri sayfasının başına da yazabilirdim ve o zaman VLOOKUP=DÜŞEYARA formülünü kullanabilirdik. Sayfanızın yapısını bozmamak için en son sütuna yazdım.

2. Sözkonusu sütunu seçip Ekle/Ad Tanımla'dan "ADISOYADI" isimli bir alan adı tanımladım. BU adı tanımlamamın nedeni Veri Doğrulama başka sayfadan alan adı tanımlamadan veri almadığı içindir.

3. Y sütununda birleştirdiğim ad ve soyada göre tablodan veri almak için İNDİS ve KAÇINCI fonksiyonlarından yararlandım.

DÜŞEYARA fonksiyonu olmazdı. Çünkü bu fonksiyon soldan bilgileri almaz.

Verilerin çağrılması için aşağıdaki formülü kullandım.

=INDEX(PersonelBilgileri!$D$3:$X$99;MATCH($C$5;PersonelBilgileri!$Y$3:$Y$52;0);0)

Umarım anlatabilmişimdir.
 
Katılım
13 Şubat 2007
Mesajlar
82
Excel Vers. ve Dili
Microsoft Office 2003
Sayın Yurttas

Sn : Yurttas bir kez daha Teşekkürlerimi ve Saygılarımı sunmak istiyorum .Gerçekten Müthişsiniz. Umarım biz de bir gün sizlerden öğrendiklerimizi diğer arkadaşlarımıza yansıtacak kadar bilgi sahibi oluruz.
Ne diyeceğimi inanın bilmiyorum çok çok saolun.Emeğinize sağlık.
Her şey gönlünüzce olsun. :hey:
 
Katılım
18 Aralık 2009
Mesajlar
5
Excel Vers. ve Dili
ecxel 2003 turkçe
Selamlar excelde yeni sayılırım Elimde 2 farklı ad ve soy ismin bulunduğu liste var
bunlar aynı excel dosyasında mevcut ad ve soyadlar aynı hücrede c hücresinde 6908 lik bir liste g hücresinde 6200 lük bir liste var yani c hücresi deki bazı ad soyadlar g hücresinde yok
ama hangileri g hücresinde yok ??? benim bunları bulmam lazım bu konuda bana yardımcı olursanız sevinirim saygılar sevgiler not : istenmesi durumunda örnek dosya verebilirim
 
Katılım
26 Şubat 2018
Mesajlar
1
Excel Vers. ve Dili
2007 türkçe
benzersiz olanı bulma

Arkadaşlar ben bir memurum. Yardıma ihtiyaç duyduğum bir konu var. 84 bin ve 81 bin satırlık iki ayrı dosya var. Bu dosyadan aradaki 3000 farkı bulmak istiyorum.

2718 ŞABAN OCAKOĞLU 19750509 76684
4301 ERDOĞAN ÖNGÖR 19560215 18816
4134 ŞABAN DEMİR 19780814 122490
3928 HİKMET KARA 19761227 96501

liste bunun gibi ve 84 bin kişi.

Alt alta ekleyip benzersizleri bul desem de olmuyor. Yinelenenleri kaldır desem tekini bırakıyor. Formül bilmeyince de tek tek bulup silmek lazım. Zaman yetmiyor. Bu konuda bir formül verebilirseniz minnettar kalırım. Teşekkür ederim.
 
Katılım
20 Şubat 2012
Mesajlar
242
Excel Vers. ve Dili
office2007 Türkçe
Merhaba

İnternetten bulmuştum.Umarım yardımcı olur

Kod:
Sub kal()

Dim sh1 As Worksheet, sh2 As Worksheet, sh3 As Worksheet
Dim d1 As Object, d2 As Object, d3 As Object
Dim u1, u2, I As Long

Set sh1 = Sheets("Yeni")
Set sh2 = Sheets("Eski")
Set sh3 = Sheets("Sayfa1") ' Sonuç Sayfası

Set d1 = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
Set d3 = CreateObject("scripting.dictionary")
d1.comparemode = 1: d2.comparemode = 1: d3.comparemode = 1

u1 = sh1.Range(sh1.Cells(1, "AU"), sh1.Cells(Rows.Count, "AU").End(3)) 'Karşılaştırma yapılan sütun
u2 = sh2.Range(sh2.Cells(1, "AU"), sh2.Cells(Rows.Count, "AU").End(3)) 'Karşılaştırma yapılan sütun

For I = 1 To UBound(u1)
    d1(u1(I, 1)) = 1
Next I

For I = 1 To UBound(u2)
    If Not d1.exists(u2(I, 1)) Then d2(u2(I, 1)) = 1
    d3(u2(I, 1)) = 1
Next I

d1.RemoveAll
For I = 1 To UBound(u1)
    If Not d3.exists(u1(I, 1)) Then d1(u1(I, 1)) = 1
Next I

With sh3
    .UsedRange.ClearContents
    If d1.Count > 0 Then .Cells(2, 1).Resize(d1.Count) = Application.Transpose(d1.keys)
    If d2.Count > 0 Then .Cells(2, 2).Resize(d2.Count) = Application.Transpose(d2.keys)
    .Cells(1, 1) = "Only in " & sh1.Name
    .Cells(1, 2) = "Only in " & sh2.Name
    .UsedRange.Columns.AutoFit
End With
End Sub
 
Üst