Soru Birden fazla hesap bulunması halinde, hesap nolarını aynı hücrede birleştirme - gösterme?

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi Günler;

Hesapno sayfasında her dosyaki kişilere ait eski hesap noları Q sutununda, yeni hesap noları ise R sutununda ayrı ayrı bulunmaktadır.

Liste sayfasında bu hesapları dosya bazında birleştirmek istiyorum

Aşağıdaki formülle doysa bazında tek olanları sorunsuz almakta ancak, aynı dosya için birden fazla hesap bulunması halinde ise hata (#yok ) vermektedir.
EĞER(Q5="-";"";İNDİS(Hesapno!R:R;KAÇINCI(Q5;Hesapno!Q:Q;0)))

Liste sayfasının B sutunda dosya nosu, Q sutununda eski hesap noları (birden fazla olması halinde (450 -451) şeklinde bulunmaktadır. R sutununda yeni hesap noları dosya bazında aynı hücrede toplu olarak bşrleştirnek ve göstermek istiyorum.
 

Ekli dosyalar

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyiAkşamlar;

konu güncel olup formülle olmamsı halinde makro ile mümkün müdüür?
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Makro ile mümkündür.
Aşağıdaki kod örnek dosyanıza göre yazılmıştır. Kodu örnek dosyanızda bir modüle yapıştırarak dener misiniz?
C++:
Sub HesapNo()
Set s1 = Sheets("Liste")
Set s2 = Sheets("Hesapno")
ss1 = s1.Cells(Rows.Count, "B").End(3).Row
ss2 = s2.Cells(Rows.Count, "B").End(3).Row
s1.Range("Q2:R" & ss1) = ""
For i = 2 To ss1
    Aranan = s1.Cells(i, 2)
    Set c = s2.Range("B1:B" & ss2).Find(Aranan, , xlValues, xlWhole)
    If Not c Is Nothing Then
        adres = c.Address
        Do
            EHN = EHN & "-" & s2.Cells(c.Row, "Q")
            YHN = YHN & "-" & s2.Cells(c.Row, "R")
            Set c = s2.Cells.FindNext(c)
        Loop While Not c Is Nothing And c.Address <> adres
    End If
    If Left(EHN, 1) = "-" Then EHN = Right(EHN, Len(EHN) - 1)
    If Left(YHN, 1) = "-" Then YHN = Right(YHN, Len(YHN) - 1)
    Cells(i, "Q") = EHN
    Cells(i, "R") = YHN
    EHN = ""
    YHN = ""
Next i
End Sub
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
Sayın dEdE;

Cevabınız ve ilginiz için teşekkürler. Güzel olmuş ancak, yeni hesap noları 455844-125 olduğunda hata vermektedir.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Bende hata vermiyor.
Nasıl bir hata veriyor. Kod hatası mı? Yanlış birleştirme mi? bunu bilmeden yorum yapamam. Hata veren dosyayı görmek lazım.
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi akşamlar;

YHN = YHN & "-" & s2.Cells(c.Row, "F")
satıtında hata vermektedir.
242626
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Yukarıdaki mesajınız sorumun cevabı değil. Hata mesajı nedir? Hata veren dosyanın bir örneğini paylaşırsanız çözüm kolay olur.
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi Haftasonular;
Sorunu nasıl çözebileceğim hakkında bilgilerinizle yardımlarımlarınız beklenmektedir.
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
Örnek ekte olup daha çceki listede "-" işaretli olanları kaldırdım.
Hesapno sayfasında eski hesapnosu olup kapatıldığğından yeni nosu bulunmayanlar bulunmakta (#yok)
veya eski hesap nosu bulunmayan anxak yeni açılan hesaplar da bulunmaktadır.
 

Ekli dosyalar

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Örnek dosyanızdaki #YOK ifadesi bir formülün sonucu mu? Yoksa durumu ifade etmek için elle mi yazıldı? Örnek dosyanızdan bunu anlayamadım.
Aynı sütunda bazı hücreler boş iken bazı hücrelerde #YOK ifadesi var. Yanıtınıza göre yazılacak kod satırı farklı olacak.
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
#YOK ifadesi bir formülün sonucu
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Aşağıdaki kodu dener misiniz?
C++:
Sub HesapNo()
Set s1 = Sheets("Liste")
Set s2 = Sheets("Hesapno")
ss1 = s1.Cells(Rows.Count, "B").End(3).Row
ss2 = s2.Cells(Rows.Count, "B").End(3).Row
s1.Range("Q2:R" & ss1) = ""
For i = 2 To ss1
    Aranan = s1.Cells(i, 2)
    Set c = s2.Range("B1:B" & ss2).Find(Aranan, , xlValues, xlWhole)
    If Not c Is Nothing Then
        adres = c.Address
        Do
            EHN = EHN & "-" & s2.Cells(c.Row, "Q")
            If WorksheetFunction.IsError(s2.Cells(c.Row, "R")) = True Then
                YHN = YHN & "-" & ""
            Else
                YHN = YHN & "-" & s2.Cells(c.Row, "R")
            End If
            Set c = s2.Cells.FindNext(c)
        Loop While Not c Is Nothing And c.Address <> adres
    End If
    EHN = Right(EHN, Len(EHN) - 1)
    YHN = Right(YHN, Len(YHN) - 1)
    s1.Cells(i, "Q") = EHN
    s1.Cells(i, "R") = YHN
    EHN = ""
    YHN = ""
Next i
End Sub
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
Sayyın dEdE;

İlginiz ve yardımınız için teşekkürler, ancak verdiğiniz makroyu çalıştırdığımda, aşağıdaki hata vermektedir.


242669

242670
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi Akşamlar;
Konu hakkında yardım esirgememniz dileğimle
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,586
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Bu başlıktaki mesajları tarafsız bir gözle inceleyelim.
İlk mesajınıza eklediğiniz örnek dosyadaki verilere göre kod yazdım. Birkaç mesajdan sonra zorla anladık ki verilerinizde farklı ifadeler (#YOK) var. Kodu buna göre revize ettim. Şimdi yine hata var diyorsunuz ama hata oluşturan Eski Hesap No sütunundaki veriler hakkında bilgi/örnek vermiyorsunuz.
Yine hayali verilere göre kodu revize etmemi beklemiyorsunuz her halde.
Özet: Örnek dosya, asıl dosyayı bire bir yansıtacak şekilde düzenlenmelidir. Veri gizliliği açısından İsimler, Telefon numaraları, TC kimlik numaraları gibi bilgiler değiştirilebilir ama kimlik numarası örneğinde harf kullanılmaz.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,455
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
@mars2,

Size verilecek cevaplarda bildiğiniz üzere kullandığınız ofis sürümü önem arz ediyor. Fakat sizin profilinizde bu alan boş bırakılmış.

Güncellerseniz faydalı olacaktır.

Ek olarak son paylaştığınız dosyada 3422016 numaralı dosya için görmek istediğiniz sonuç nedir?
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi Akşamlar;
- İş yeri ve evdeki farklı versiyonlar olmakla birlikte, Office 2016 - 2019 versiyonu
- 3422016 numaralı dosya için görmek istediğimiz sonuç 3186 -2438 - 2450 - 2432
Aynı dosyadan farklı kişiler için tek hesap açılmış ise tek, ayrı ayrı açılması halinde farklı hesap nolarını aynı hücrede görebilmek amaçlıdır.
Örneğin 3402028 nolu dosya için farklı olarak 2230-2231 nolu hesaplar açılmış okup Liste sayfasınında tek dosya nosu bulunduğu ve R sutununun ilgi hücresinde iki hesapda gözükmesi, takini daha kolay olacağından.

Sayın dEdE
Serzenişleriinizde haklısınız.
Örnekte olduğu gibi eski hesap nolarının başında iki ade sabit iki adet büyük harf, daha sonra iki adet 00 ve son 4 adet rakamdan ibarettir.
Eski hesap noları elle tek tek girişi yapıldığından sabit bulunmaktadır. Yeni hesap noları farklı bir listeden çekilerek birlrştirildi. (#YOK) olabilir.
kimlik numarası örneğinde harf kullanılmaz. Sözkonusu eski hesap nosu sodan Başlangıcın şlk ikisi harf


Yine hayali verilere göre kodu revize etmemi beklemiyorsunuz her halde.
Özet: Örnek dosya, asıl dosyayı bire bir yansıtacak şekilde düzenlenmelidir. Veri gizliliği açısından İsimler, Telefon numaraları, TC kimlik numaraları gibi bilgiler değiştirilebilir ama kimlik numarası örneğinde harf kullanılmaz.
 

mars2

Altın Üye
Katılım
2 Eylül 2004
Mesajlar
553
Excel Vers. ve Dili
2016 - Türkçe
2019 - Türkçe
Altın Üyelik Bitiş Tarihi
26-03-2026
İyi Hafta sonları;

Hesapno sayfasındaki tek tek bulunan hesap noları "Liste" sayfasındaki B sutunundaki aynı dosya nosu göre Q ve R sutundaki karşılıklarına gelen hücrelerede toplu olarak gösterilmesi
Örneğin;
Hesapno sayfasında ayrı ayrı satırlardaki 3422016 nolu dosyaya ait hesapların Liste sayfasındaki 3422016 nolu dosyaya ait satırın Q sutunda eski hesap noları toplu olarak, R sutunda ise yeni hesap nolar toplu olarak göstermek istiyorum.

Liste sayafasında Q sutunu R sutunu
eski hesap no yeni hesap no
3422016 7516 – 7800 – 7814 - 7793 3186 -2438 - 2450 - 2432
 
Üst