Birden çok sutüna yazılmış değerleri aynı hücrede alt alta birleştirmek

Katılım
22 Şubat 2018
Mesajlar
34
Excel Vers. ve Dili
Excel 2013 - Türkçe
Altın Üyelik Bitiş Tarihi
26/06/2023
Merhabalar bir yardıma ihtiyacım vardı. örneğin elimde bazı kodlar var farklı hücrelere girilmiş olarak. bunları teker teker kopyalayıp bir hücre içinde Alt+Enter yaparak alt alta yazabiliyorum ama 100 tane kodu aynı hücreye böyle teker teker yazmak çok zor bunun bir kısayolu varsa yardımcı olurmusunuz ?
 

Ekli dosyalar

Katılım
22 Şubat 2018
Mesajlar
34
Excel Vers. ve Dili
Excel 2013 - Türkçe
Altın Üyelik Bitiş Tarihi
26/06/2023
Yardımınız ve notunuz için çok teşekkür ederim RABBİM sizi her zaman sizin gibi güzel insanlar ile karşılaştırsın =))
 

Erdem Akdemir

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

KTF ile alternatif,
Formülün yazılı olduğu hücrede metni kaydır yaparsanız sonucu görebilirsiniz.
Kopyala değerleri yapıştır ile'de metni kaydır olmadan sonuçları alabilirsiniz.

Kod:
=birles(A1:A50;DAMGA(10))
Kod:
Function birles(hucre As Range, Optional imlec As String = "") As String

For Each alan In hucre

If alan = "" Then
Else
k = k & alan & imlec
End If
Next alan

If imlec = "" Then
birles = k
Else
birles = VBA.Left(k, VBA.Len(k) - 1)
End If
End Function
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027

Korhan Ayhan

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

Kod:
Option Explicit

Function KBİRLEŞTİR(Alan As Range, Optional Ayıraç As String = vbNewLine)
    Dim Veri As Range, Liste As Variant, Say As Long
    
    Application.Volatile True
    
    ReDim Liste(1 To 1)
    
    For Each Veri In Alan
        If Veri.Value <> "" Then
            Say = Say + 1
            ReDim Preserve Liste(1 To Say)
            Liste(Say) = Veri.Value
        End If
    Next
    
    KBİRLEŞTİR = Join(Liste, Ayıraç)
End Function
 
Katılım
3 Aralık 2009
Mesajlar
2
Excel Vers. ve Dili
Microsoft Office 2016
Peki aynı hücrelere alt alta çok fazla sayıda yazılan (''alt+enter'' ile ) değerleri veya kelimeleri alt alta farklı satır hücrelerine nasıl dönüştürebilirim?
 

Korhan Ayhan

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


 
Katılım
3 Aralık 2009
Mesajlar
2
Excel Vers. ve Dili
Microsoft Office 2016
Korhan Bey,
Öncelkle hızlı dönüşününz için teşekkürler. Daha önce sitedki gönderdiğiniz çalışmaları incelemişitim fakat genelde başlık gibi az sayıda aynı hücredeki değer veya metinleri sütünlara bölme işlemi. Benim aradığım ise tek hücrede alt alta satır halinde yazılmış değer veya kelimeleri yine satır halinde yazabilmek. Üzerinde çalıştığım excell dosyasını bu linkden inceleyebilirsiniz.
https://s5.dosya.tc/server6/64ekuj/JC_trim_IV_2021.xlsx.html
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
"Libre Office - RegEx" ile alternatif, ancak E sütunundaki verileriniz sanki eksik veya problemli....... 10 adet veri var gibi görünüyor.




.
 
Son düzenleme:
Katılım
20 Şubat 2007
Mesajlar
517
Excel Vers. ve Dili
2007 Office, Tr
Merhaba,
İşlemde Damga(10) olduğu için şu şekilde yapılabilir:
Bitişik veriniz "A2" hücresinde ise
"B1" den sağa doğru yeteri kadar sıra numarası yazın
"B2" ye şu formülü yazıp sağa doğru kopyalayın

=KIRP(PARÇAAL(YERİNEKOY($A2;DAMGA(10);YİNELE(" ";UZUNLUK($A2))); (B$1-1)*UZUNLUK($A2)+1; UZUNLUK($A2)))

A

B

C

D

E


 

1​

2​

3​

4​

ali
veli
selami

ali

veli

selami

 
 

Korhan Ayhan

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

Haluk beyin paylaşımına benzer bir kullanıcı tanımlı fonksiyon (KTF) hazırladım.

C++:
Option Explicit

Function TEXT_TO_ROW(My_Range As Range, What_Value As Integer, Optional Splitter As Variant = vbLf)
    Dim My_Text As Variant
    
    Application.Volatile True
    
    My_Text = VBA.Split(My_Range.Value, Splitter)
    
    TEXT_TO_ROW = My_Text(What_Value - 1)
End Function
Hücrede görselde ki kullanabilirsiniz.



234220
 

Ekli dosyalar

Üst