• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

birleştir kodu

yalovam77

Altın Üye
Altın Üye
Katılım
12 Temmuz 2006
Mesajlar
206
Excel Vers. ve Dili
Microsoft 365 / Türkçe
Sub birlestir()

For a = 1 To Cells(65536, 1).End(xlUp).Row
Cells(a, 10) = Cells(a, 1) & "- " & Cells(a, 2) & "- " & Cells(a, 3)
Next
End Sub

selamlar yukarıdaki kodu buldum çalıştırdım ama benim için lazım olan sayfa1 de a1 den z1 kadar dolu olan sütunları aralarında / olacak şekilde sayfa2 de a1 de birleştirecek bir kod lazım hücrelere veri girildikçe otomatik olmasını istiyorum. yardımcı olurmusunuz. teşekkür ederim şimdiden
 
Merhaba.
Sayfa1in adını sağ tıklatın "Kod Görüntüle" seçin açılan kod sayfasına aşağıdaki kodu kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:Z1")) Is Nothing Then
        Dim Bak As Range
        Dim Deger As String
        For Each Bak In Range("A1:Z1")
            If Deger = "" Then
                Deger = Bak
            Else
                Deger = Deger & " / " & Bak
            End If
        Next
    End If
    Worksheets("Sayfa2").Range("A1") = Deger
End Sub

Sayfa1 de "A1:Z1" hücreleri arasında bir değişklik olduğunda kodlar çalışacak ve Sayfa2 nin A1 hücresine yazacaktır.
 
Teşekkür ederim Üstadım çalıştı ancak a dan z kadar her zaman dolu olmuyor en son dolu hücreye kadar "/ ekletmek mümkünmü
ikinciside a2 a3 satırlarına veri girildiğinde yani aşağıya doğru veri girildikçe de sayfa2 a2 hücresine sayfa2 a3 hücresine yazacak şekilde ayarlamak mümkünmü kusura bakmayın eksik anlatmışım.
 
Aşağıdaki kodları deneyin.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:Z" & Rows.Count)) Is Nothing Then
        Dim Bak As Range
        Dim Deger As String
        For Each Bak In Range("A" & Target.Row & ":Z" & Target.Row)
            If Not Bak = "" Then
                If Deger = "" Then
                    Deger = Bak
                Else
                    Deger = Deger & " / " & Bak
                End If
            End If
        Next
    End If
    Worksheets("Sayfa2").Range("A" & Target.Row) = Deger
End Sub
 
Çok teşekkür ederim Üstadım harika olmuş bir şey sorabilirmiyim bu işlem hücrelere veriyi tek tek girdikçe oluyor başka bir belgeden bir tabloyu kopyalayıp bu belgeye yapıştırsak oda olurmu teşekkür ederim.
 
Aşağıdaki kod ile olur

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1:Z" & Rows.Count)) Is Nothing Then
        Dim Bak As Range
        Dim Deger As String
        Dim Hcr As Range
        For Each Hcr In Target
            Deger = ""
            For Each Bak In Range("A" & Hcr.Row & ":Z" & Hcr.Row)
                If Not Bak = "" Then
                    If Deger = "" Then
                        Deger = Bak
                    Else
                        Deger = Deger & " / " & Bak
                    End If
                End If
            Next
            Worksheets("Sayfa2").Range("A" & Hcr.Row) = Deger
        Next
    End If
End Sub
 
Alternatif olarak forumda daha önce paylaştığım K_BİRLEŞTİR kullanıcı tanımlı fonksiyonunu araştırıp kullanabilirsiniz..
 
Geri
Üst