• DİKKAT

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

sub_birleştir() yardım lütfen

  • Konbuyu başlatan Konbuyu başlatan vol1237
  • Başlangıç tarihi Başlangıç tarihi
Katılım
12 Kasım 2011
Mesajlar
146
Excel Vers. ve Dili
2010 türkçe
arkadaşlar merhaba.bir makroya ihtiyacım var. Bu makroda öncelikle a sütunu ile e sütunu değerlerini j sütununda birleştirecek sonrada k sütunu ile j sütununu I sütunun da birleştirecek. ancak bu işlemi a sütunun da son verisine kadar yapacak. özetle makro çalıştığında

a2&e2=j2, a3&e3=j3, a4&e4=j4...... a sütunundaki en son değer hangi hücredeyse oraya kadar birleştirecek sonrada
k2&j2=I2, k3&j3=I3, k4&j4=I4........ bu işlemi de j sütunundaki en son değer hangi hücredeyse oraya kadar birleştirecek

yardımlarınız için şimdiden teşekkürler
 
Merhaba,
Aşağıdaki kodu deneyiniz, değerleri birleştirirken boşluk yenine başka bir şey isterseniz koddaki kırmızı kısmı isteğinize göre değiştiriniz.
Kod:
Sub Birleştir()
son = Range("A" & Rows.Count).End(3).Row
dz = Range("I1:J" & son)
For a = 2 To son
    dz(a, 2) = Cells(a, "A") &[COLOR="Red"] " "[/COLOR] & Cells(a, "E")
    dz(a, 1) = Cells(a, "K") & [COLOR="red"]" "[/COLOR] & dz(a, 2)
Next
Range("I1:J" & son) = dz
End Sub
 
Buyurun.:cool:
Kod:
Sub birlestir59()
Dim sonsat As Long, i As Long
Range("I2:J" & Rows.Count).ClearContents
sonsat = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To sonsat
    Cells(i, "J").Value = Cells(i, "A").Value & Cells(i, "E").Value
    Cells(i, "I").Value = Cells(i, "K").Value & Cells(i, "J").Value
Next i
MsgBox "İşlem Tamamlandı." & vbLf & "evrengizlen@hotmail.com"
End Sub
 
Buyurun.:cool:
Kod:
Sub birlestir59()
Dim sonsat As Long, i As Long
Range("I2:J" & Rows.Count).ClearContents
sonsat = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To sonsat
    Cells(i, "J").Value = Cells(i, "A").Value & Cells(i, "E").Value
    Cells(i, "I").Value = Cells(i, "K").Value & Cells(i, "J").Value
Next i
MsgBox "İşlem Tamamlandı." & vbLf & "evrengizlen@hotmail.com"
End Sub

Öncelikle mucit77 ve orion teşekkür ederim. aşağıdaki makroyla nasıl birleştrebilirim? öncelik sırasıda önce sizin kodu işletecek sonrada aşağıdaki kodu çalıştıracak buarada birleştirme işlemin yapılacağı sayfa adı da "DATA "
Kod:
Private Sub CommandButton10_Click()
son = Sheets("DATA").[k65536].End(3).Row

With Sheets("DATA").Range("k3:k" & son)
    .Formula = "=IF(j3=j2,k2+1,1)"
    .Value = .Value
End With

End Sub
[/QUOTE]
 
Merhaba,
Aşağıdaki kodu deneyiniz, değerleri birleştirirken boşluk yenine başka bir şey isterseniz koddaki kırmızı kısmı isteğinize göre değiştiriniz.
Kod:
Sub Birleştir()
son = Range("A" & Rows.Count).End(3).Row
dz = Range("I1:J" & son)
For a = 2 To son
    dz(a, 2) = Cells(a, "A") &[COLOR="Red"] " "[/COLOR] & Cells(a, "E")
    dz(a, 1) = Cells(a, "K") & [COLOR="red"]" "[/COLOR] & dz(a, 2)
Next
Range("I1:J" & son) = dz
End Sub

Üstad elerinize sağlık.. aşağıdaki makroyla önce sizin yaptığınız işlemi yapması koşuluyla nasıl birleştirebiliriz? Sizin makronun yazdığınız makronun işlem yaptığı sayfa adıda "data" bu arada saygılar..

Kod:
Private Sub CommandButton10_Click()
son = Sheets("DATA").[k65536].End(3).Row

With Sheets("DATA").Range("k3:k" & son)
    .Formula = "=IF(j3=j2,k2+1,1)"
    .Value = .Value
End With

End Sub
[/QUOTE]
 
Yukarıdaki kodlardan hangisini kullanıyorsanız onun sonuna (End Sub'dan öncesine) aşağıdaki satırı ilave ediniz. Sizin CommandButton10 neredeyse ona göre değiştiriniz.
Kod:
Run "[COLOR="Red"]Sayfa1.[/COLOR]CommandButton10_Click"
 
Merhaba,
Aşağıdaki kodu deneyiniz, değerleri birleştirirken boşluk yenine başka bir şey isterseniz koddaki kırmızı kısmı isteğinize göre değiştiriniz.
Kod:
Sub Birleştir()
son = Range("A" & Rows.Count).End(3).Row
dz = Range("I1:J" & son)
For a = 2 To son
    dz(a, 2) = Cells(a, "A") &[COLOR="Red"] " "[/COLOR] & Cells(a, "E")
    dz(a, 1) = Cells(a, "K") & [COLOR="red"]" "[/COLOR] & dz(a, 2)
Next
Range("I1:J" & son) = dz
End Sub

Sevgili mucit77 buna birde

eğer j3=j2 ise k3=k2+1 değilse 1 olsun.Bu işlemi j Sütunun bir değer içerdiği en son hücre hangisiyse ona kadar yapmalı ve k2 ye ilk değeri kendim veriyorum 1 olarak.Sayfa adı "data"

Çok sağolun saygılar
 
Kod:
Sub Birleştir()
son = Range("A" & Rows.Count).End(3).Row
dz = Range("I1:J" & son)
For a = 2 To son
    dz(a, 2) = Cells(a, "A") &[COLOR="Red"] " "[/COLOR] & Cells(a, "E")
    dz(a, 1) = Cells(a, "K") & [COLOR="red"]" "[/COLOR] & dz(a, 2)
Next
Range("I1:J" & son) = dz
End Sub
[/QUOTE]

Birde bu birleştirme işleminden sonra oluşan değer bir sayı gibi oluşuyor ve formüllerde eşleştirme yapmıyor... bu birleştirme sonucunda oluşan verinin say değilde metin olmasını nasıl sağlarım?
 
Son düzenleme:
Geri
Üst