Son Satırı İlgili Sayfaya Aktarma

Katılım
24 Temmuz 2019
Mesajlar
181
Excel Vers. ve Dili
2010 ve 2016 Türkçe
Altın Üyelik Bitiş Tarihi
19-10-2023
Merhaba arkadaşlar. Forumda işime yarayabilecek bir excel kitabı buldum.Kitaptaki Makroya şu şekilde ekleme yapmak istiyorum. Şuanki hali ile Sayfa1 deki en alttaki veriyi Sayfa2 ye taşıyor. Ama ben şu şekilde yapmak istiyorum. Eğerki A sütununun son verisinde İLK yazıyorsa, İLK adlı sayfaya, ORTA yazıyorsa, ORTA isimli sayfaya, SON yazıyorsa SON adlı sayfaya diğer o satırdaki diğer değerlerle beraber taşısın istiyorum. Eğer ki A sütunundaki değerler yanlış yazıldıysa uyarsın istiyorum. Şimdiden teşekkür ederim.
 

Ekli dosyalar

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Merhaba arkadaşlar. Forumda işime yarayabilecek bir excel kitabı buldum.Kitaptaki Makroya şu şekilde ekleme yapmak istiyorum. Şuanki hali ile Sayfa1 deki en alttaki veriyi Sayfa2 ye taşıyor. Ama ben şu şekilde yapmak istiyorum. Eğerki A sütununun son verisinde İLK yazıyorsa, İLK adlı sayfaya, ORTA yazıyorsa, ORTA isimli sayfaya, SON yazıyorsa SON adlı sayfaya diğer o satırdaki diğer değerlerle beraber taşısın istiyorum. Eğer ki A sütunundaki değerler yanlış yazıldıysa uyarsın istiyorum. Şimdiden teşekkür ederim.
Merhaba , Önceki kodları dikkate almadan aşağıdaki gibi deneyiniz.

Kod:
Sub Emr_Aktar()

Dim AktfSyf, Sayf, SonSatS1, SonSatS2, i

    SonSatS1 = Cells(Rows.Count, 1).End(xlUp).Row
    Sayf = Cells(SonSatS1, 1).Value
    AktfSyf = ActiveSheet.Name
    
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> AktfSyf And Sheets(i).Name = Sayf Then
            SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row
            Range(Sheets(Sayf).Cells(SonSatS2, 1), Sheets(Sayf).Cells(SonSatS2, 10)).Value = Range(Cells(SonSatS1, 1), Cells(SonSatS1, 10)).Value
            Akt = True
        End If
    Next
    
    If Akt Then
    MsgBox "Aktarim Basariyla Gerceklesti"
    Else
    MsgBox "Aktarim Ilgili Sayfa bulunamadigi Icim Gerceklesmedi"
    End If

End Sub
 
Katılım
24 Temmuz 2019
Mesajlar
181
Excel Vers. ve Dili
2010 ve 2016 Türkçe
Altın Üyelik Bitiş Tarihi
19-10-2023
Merhaba , Önceki kodları dikkate almadan aşağıdaki gibi deneyiniz.

Kod:
Sub Emr_Aktar()

Dim AktfSyf, Sayf, SonSatS1, SonSatS2, i

    SonSatS1 = Cells(Rows.Count, 1).End(xlUp).Row
    Sayf = Cells(SonSatS1, 1).Value
    AktfSyf = ActiveSheet.Name
   
    For i = 1 To Sheets.Count
        If Sheets(i).Name <> AktfSyf And Sheets(i).Name = Sayf Then
            SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row
            Range(Sheets(Sayf).Cells(SonSatS2, 1), Sheets(Sayf).Cells(SonSatS2, 10)).Value = Range(Cells(SonSatS1, 1), Cells(SonSatS1, 10)).Value
            Akt = True
        End If
    Next
   
    If Akt Then
    MsgBox "Aktarim Basariyla Gerceklesti"
    Else
    MsgBox "Aktarim Ilgili Sayfa bulunamadigi Icim Gerceklesmedi"
    End If

End Sub
Hocam elinize sağlık. Fakat şöyle bir sorun var. Tekrar eklemeye çalışınca diğer sayfaların bir alt satırına eklemiyor. Hep 1. satıra ekliyor.
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,524
Excel Vers. ve Dili
Office 365 Türkçe
Hocam elinize sağlık. Fakat şöyle bir sorun var. Tekrar eklemeye çalışınca diğer sayfaların bir alt satırına eklemiyor. Hep 1. satıra ekliyor.
SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row bu satırı aşağıdaki gibi değiştirip dener misiniz.

SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row + 1
 
Katılım
24 Temmuz 2019
Mesajlar
181
Excel Vers. ve Dili
2010 ve 2016 Türkçe
Altın Üyelik Bitiş Tarihi
19-10-2023
SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row bu satırı aşağıdaki gibi değiştirip dener misiniz.

SonSatS2 = Sheets(Sayf).Cells(Sheets(Sayf).Rows.Count, 1).End(xlUp).Row + 1
Emeğinize sağlık hocam. Çok teşekkür ederim. İşime yaradı.
 
Üst