Satırdaki hücreleri birleştirme

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,060
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,
Ekli dosyada "A" sütununda alt -alta yazan kelimeleri tek bir hücrrede aralarında , olacak şekilde tek hücrede bir formül ile birleştirmek istiyorum

Satır sayısı çok fazla olacağı için CONCATENATE (BİRLEŞTİR) fonksiyonu çok pratik olmadı.

Teşekkürler,

iyi Çalışmaalr.
 

Ekli dosyalar

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Fonksiyonla yapmak biraz işi uzatır ama farklı yöntemle şöyle yapabilirsiniz.
B1 :

Kod:
=A1
B2 :
Kod:
=B1&","&A2
ve B2 deki formülü aşağıya doğru kopyalarsınız.
Son hücredeki değeri kopyala değer yapıştır ile B1 hücresine aktarıp, diğer satırları silersiniz.

e biraz uzun oldu sanırım. Bunu kullanmak istemezseniz aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub Birlestir()

    Dim i   As Integer, _
        d   As String
    
    d = Range("A1")
    
    For i = 2 To Cells(Rows.Count, "A").End(3).Row
        d = d & "," & Cells(i, "A")
    Next i
    
    Range("B1") = d
    
End Sub
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,060
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,

Fonksiyonla yapmak biraz işi uzatır ama farklı yöntemle şöyle yapabilirsiniz.
B1 :

Kod:
=A1
B2 :
Kod:
=B1&","&A2
ve B2 deki formülü aşağıya doğru kopyalarsınız.
Son hücredeki değeri kopyala değer yapıştır ile B1 hücresine aktarıp, diğer satırları silersiniz.

e biraz uzun oldu sanırım. Bunu kullanmak istemezseniz aşağıdaki kodları kullanabilirsiniz.

Kod:
Sub Birlestir()

    Dim i   As Integer, _
        d   As String
   
    d = Range("A1")
   
    For i = 2 To Cells(Rows.Count, "A").End(3).Row
        d = d & "," & Cells(i, "A")
    Next i
   
    Range("B1") = d
   
End Sub
Teşekkürler,

Kullanıcı Tanımlı fonksiyon olarak nasıl düzenleyebiliriz


iyi Çalışmalar.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Verdiğim kodları Sub Yerine Function yapmak gerek.
Aşağıdaki kodları bir modüle ekleyin ve o d osyayı da Eklenti olarak kaydedin

Kod:
Function VİRGÜLLEBİRLEŞTİR(Hücre As Range)

    Dim Hcr As Range, _
        d   As String
   
    For Each Hcr In Hücre
        If Len(d) = 0 Then
            d = Hcr
        Else
            d = d & "," & Hcr
        End If
    Next Hcr
   
    VİRGÜLLEBİRLEŞTİR = d
   
End Function
Kullanımı :

Kod:
=VİRGÜLLEBİRLEŞTİR(SeçilenAlan)
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,060
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,

Verdiğim kodları Sub Yerine Function yapmak gerek.
Aşağıdaki kodları bir modüle ekleyin ve o d osyayı da Eklenti olarak kaydedin

Kod:
Function VİRGÜLLEBİRLEŞTİR(Hücre As Range)

    Dim Hcr As Range, _
        d   As String
  
    For Each Hcr In Hücre
        If Len(d) = 0 Then
            d = Hcr
        Else
            d = d & "," & Hcr
        End If
    Next Hcr
  
    VİRGÜLLEBİRLEŞTİR = d
  
End Function
Kullanımı :

Kod:
=VİRGÜLLEBİRLEŞTİR(SeçilenAlan)

Çok Teşekkürler,
 
Üst