Birden fazla hücreyi tek hücrede alt alta birleştirme.

Katılım
15 Haziran 2016
Mesajlar
7
Excel Vers. ve Dili
2013
Herkese iyi çalışmalar.
Avukatlık yapıyorum ve İcra programımızdan alınan raporu düzenlerken bir sorun yaşıyorum. Kısaca anlatayım.
Program birden fazla borçlu varsa her birine ayrı bir hücre ayırıyor. Fakat alacaklı tek olduğunda alacaklıyı da iki ayrı hücreyi birleştirerek tek hücrede karşıma çıkarıyor. Bu listede 400 adet dosyayı barındırdığında, isme göre, Müdürlük veya bir başka kıstasa göre sıralama ihtiyacı doğuyor ve sorun da orada yaşanıyor. Çünkü excell birleşmiş hücre olduğundan sıralama yaptırmıyor. Bana lazım olan her sütunun birer hücrede olması, eğer birden fazla borçlu varsa bunu tek hücrede ama alt alta (Enter edilmiş gibi)göstermesi.
Böylelikle 300 dosyayı sıralama ve süzme yapıp çıktı alacağım. Yardım eden olursa sevinirim. Bir ricam da makro düzeyde yardım olmaması. Çünkü yapamayacağımı düşünüyorum.
 
Son düzenleme:

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,644
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Merhaba,

Tag'daki kodu kullanabilirsiniz.

Kod:
Sub duzenle()
Cells.UnMerge
son = Cells(Rows.Count, "a").End(3).Row + 1
Range("a1:f" & son).SpecialCells(xlCellTypeBlanks) = "=R[-1]C"
End Sub
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,644
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Makro kullanmadan'da yapabilirsiniz.

1-Tüm hücreleri seçin ve Birleştir ve Ortala'ya tıklayın bütün birleştirilmiş hücreler çözülsün.

2-Veri olan alanı seçin sırası ile F5 >Özel >Boşluklar >Tamam >=A2 > CTRL+ENTER
 
Katılım
15 Haziran 2016
Mesajlar
7
Excel Vers. ve Dili
2013
Sayın KUVARİ;
Yazdıkların için teşekkürler ama beceremedim.
Listenin bir kısmını ekte seçtim. Yapmak istediğim önce icra Müdürlüğü, sonra dosya numarasına göre sıralamak.
Karşılaştığım sorunlar
1-) Bazı hücreler birleştiği için sıralama yapmıy.
2-) Dosya numaraları yıl/numara şeklinde olduğundan bir bütün olarak algılayıp 2015/91 nolu dosyayı 2018/12125 nolu dosyanın altına atıyor. Excel ilk beş karakter aynı olduğundan 6. karakterlere bakıyor ve (1) olanı üste atıyor. Bunu önce verileri (/) kıstası ile ayırıp sıralayıp tekrar birleştiriyorum.
Yardım ederseniz sevinirim. Profesyonel kullanıcı olmadığımdan ayrıntılı yardım ederseniz iki kat mutlu olurum.
http://s5.dosya.tc/server2/j4g9p2/takip-raporu-201606200727.xlsx.html
 
Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Kanaatim o ki, sıralama, filtreleme gibi işlemler için en kullanışlı yöntem hücreleri birleştirmek yerine
tam eksine birleştirmeleri iptal etmek ve oluşan boş hücrelere de bir üst hücre değerini yazdırmak diye düşünüyorum.
Tabi tercih sizin. Denemenizi öneririm.

Sayfa adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçtiğinizde açılan VBA ekranının sağa tarafındaki boş alana
aşağıdaki kod'u yapıştırın ve üst taraftaki RUN (çalıştır) düğmesine tıklayarak kod'u çalıştırın.
.
Kod:
[FONT="Arial Narrow"]Sub BİRLEŞTİRME_İPTAL_TAMAMLA()
Range("A:I").UnMerge
    For satır = 2 To [D65536].End(3).Row
        For sütun = 1 To 8
            If Cells(satır, sütun) = "" Then Cells(satır, sütun) = Cells(satır - 1, sütun)
        Next
    Next
MsgBox "İşlem Tamamlandı."
End Sub[/FONT]
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,011
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

Ekteki örnek dosyayı inceleyiniz.
 

Ekli dosyalar

Katılım
15 Haziran 2016
Mesajlar
7
Excel Vers. ve Dili
2013
Üstad teşekkür ederim tavsiyen için. Fakat tavsiyene göre kodu yapıştırdığımda örneğin bir satırda 5 borçlu varsa diğer sütunlarda 4 boşluk var demektir ve formülle doldurduğumda 5 tane aynı dosya numarasından ekliyor (Ekte sarı ile boyalı). O durumda aşağıdaki gibi bir görüntü oluyor ki bu da benim 400-500 dosya için alacağım listede ciddi kalabalık demek. Başka önerin varsa sevinirim.
https://yadi.sk/i/HiMj4syFshoPn
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,011
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Benim önerimi denediniz mi?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhaba.

İstediğiniz şeyi aşağıdaki kod sağlayacaktır.
Belgeniz açıkken alt taraftan sayfa adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
açılan VBA ekranının sağ tarafındaki boş alana aşağıdaki kod'u yapıştırın ve çalıştırın.
.
Kod:
[FONT="Arial Narrow"][B]Sub BİRLEŞTİR()[/B]
Columns("G:G").Insert Shift:=xlToRight
Cells(1, 7) = 1
With Range("G2:G" & [D65536].End(3).Row)
    .Formula = "=IF(A2="""",G1,G1+1)"
    .Value = .Value
End With
For satır = 2 To WorksheetFunction.Max(Range("G:G"))
    ilk = WorksheetFunction.Match(satır, Range("G:G"), 0)
    son = WorksheetFunction.CountIf(Range("G:G"), satır) + ilk - 1
        For değer = ilk To son
            metind = metind & Chr(10) & Cells(değer, 4)
        Next
    Cells(ilk, 4) = Mid(metind, 2, Len(metind))
metind = ""
Next
Cells.UnMerge
For sat = [D65536].End(3).Row To 2 Step -1
    If Cells(sat, 1) = "" Then Rows(sat & ":" & sat).Delete Shift:=xlUp
Next
Columns("G:G").Delete Shift:=xlToLeft: Columns("D:D").ColumnWidth = 42.14
Rows.AutoFit: Columns.AutoFit: MsgBox "İşlem Tamamlandı."
[B]End Sub[/B][/FONT]
 
Katılım
15 Haziran 2016
Mesajlar
7
Excel Vers. ve Dili
2013
Ömer bey malesef olmadı. Sütun ve satırlar birbirlerine karşıtı.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Ekran görüntüsü veya gerçek belgenizin bir parçasını paylaşır mısınız?
Çünkü örnek belgeniz üzerinde denediğimde sorunla karşılaşmadım.

Tekrar denedim, sorun göremiyorum.
İşlemin uygulandığı belgeye buradan ulaşabilirsiniz.
.
 
Son düzenleme:
Üst