MAKRO İLE HÜCRE BİRLEŞTİRME VE ORTALAMA

Katılım
25 Mart 2024
Mesajlar
23
Excel Vers. ve Dili
Iyi
merhabalar. bir listem var. istediğim şey G sütununda yazan sayıya göre H sütununun (H dahil) solundaki tüm sütunlarda yer alan satırların birleşmesi örneğin G1 e 7 yazdığımda A1:A7, B1:B7, C1:C7 vb. şeklinde otomatik birleşmesini, daha sonra G8 e 4 yazdığımda A8:A12, B8:B12 vb. şeklinde ilerlemesi istiyorum. yardımcı olursanız sevinirim.
 
Son düzenleme:

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,439
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Sayfanın kod sayfasına aşağıdaki kodu kopyalayın.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Sutun As Variant
    If Not IsNumeric(Target.Value) Then
        MsgBox "Bu alana sadece rakam girişi yapabilirsiniz"
        Exit Sub
    End If
    If Not Intersect(Target, Range("G:G")) Is Nothing Then
        For Each Sutun In Array("A", "B", "C", "D", "E", "F")
            Range(Cells(Target.Row, Sutun), Cells(Target.Row + Target.Value - 1, Sutun)).Merge
        Next
    End If
End Sub
 
Katılım
25 Mart 2024
Mesajlar
23
Excel Vers. ve Dili
Iyi
Merhaba.
Sayfanın kod sayfasına aşağıdaki kodu kopyalayın.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Sutun As Variant
    If Not IsNumeric(Target.Value) Then
        MsgBox "Bu alana sadece rakam girişi yapabilirsiniz"
        Exit Sub
    End If
    If Not Intersect(Target, Range("G:G")) Is Nothing Then
        For Each Sutun In Array("A", "B", "C", "D", "E", "F")
            Range(Cells(Target.Row, Sutun), Cells(Target.Row + Target.Value - 1, Sutun)).Merge
        Next
    End If
End Sub
hocam çok teşekkürler kod çalıştı çok işime yaradı. ancak şöyle bir sorunum var aynı sayfada kendi kodum vardı ikisini birleştirdiğimde çalışmıyor. sizin yazdığınız kod ile şu kodu nasıl birleştirebilirim.
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range
For Each Rng In Target.Cells
Rng = WorksheetFunction.Proper(Rng)
Next
End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,439
Excel Vers. ve Dili
2019 Türkçe
Bunu kullanın.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Sutun As Variant
    Dim Rng As Range
    Application.EnableEvents = False
    For Each Rng In Target.Cells
        Rng = WorksheetFunction.Proper(Rng)
    Next
    Application.EnableEvents = True

    If Not Intersect(Target, Range("G:G")) Is Nothing Then
        If Not IsNumeric(Target.Value) Then
            MsgBox "Bu alana sadece rakam girişi yapabilirsiniz"
            Exit Sub
        End If
        For Each Sutun In Array("A", "B", "C", "D", "E", "F")
            Range(Cells(Target.Row, Sutun), Cells(Target.Row + Target.Value - 1, Sutun)).Merge
        Next
    End If
End Sub
 
Katılım
25 Mart 2024
Mesajlar
23
Excel Vers. ve Dili
Iyi
Bunu kullanın.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Sutun As Variant
    Dim Rng As Range
    Application.EnableEvents = False
    For Each Rng In Target.Cells
        Rng = WorksheetFunction.Proper(Rng)
    Next
    Application.EnableEvents = True

    If Not Intersect(Target, Range("G:G")) Is Nothing Then
        If Not IsNumeric(Target.Value) Then
            MsgBox "Bu alana sadece rakam girişi yapabilirsiniz"
            Exit Sub
        End If
        For Each Sutun In Array("A", "B", "C", "D", "E", "F")
            Range(Cells(Target.Row, Sutun), Cells(Target.Row + Target.Value - 1, Sutun)).Merge
        Next
    End If
End Sub
teşekkürler ellerinize sağlık
 
Üst