• DİKKAT

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

Hücredeki sayfaya veri kopyalama

Katılım
24 Mayıs 2007
Mesajlar
39
Excel Vers. ve Dili
Excell 2013 Tr
Merhaba;
Benim sizler için basit benim için büyük sayılacak bir sorunum var. :)

Üstatlar;
Ek'te bulunan örnek dosyada daha iyi anlatabildim ama burada da anlatmaya çalışayım.
Ben 1 sayfada veri girişi yapıyorum ve sonrasında butona basınca bunu başka bir sayfaya kaydederek veri girişi yaptığım yeri temizliyor.
istediğim veri girişi yaptığım yerde makine no kısmında 100 yazıyorsa bu işlemi (kopyalama) 100 isimli sayfaya yapsın, makine no kısmında 200 yazıyorsa bu işlemi 200 isimli sayfaya yapsın.
İlginiz ve yardımlarınız için şimdiden çok teşekkürler.
 

Ekli dosyalar

Aşağıdaki kodları deneyin.

Kod:
Sub Kopyala()
    Dim SonSatir As Long
    With Sheets([B4].Text)
        SonSatir = .Cells(Rows.Count, "A").End(3).Row + 1
        .Cells(SonSatir, "A").Value = [C4]
        .Cells(SonSatir, "B").Value = [D4]
        .Cells(SonSatir, "C").Value = [E4]
        .Range("C4:E4").ClearContents
    End With
End Sub
 
Hocam çok teşekkürler. Kod sorunsuz çalışıyor.
Bilgi amaçlı bir şey sormak istiyorum. Sizin yazdığınız kodun "With Sheets ([B4].Text)" kısmını benim kodumdaki "Sheets ("100").Select" kısmına uyarladım ve benim kodumda çalışmış oldu.
Buna göre Sheets([Hücre].Text) şekli ilgili hücredeki veriye göre sayfayı seçmeyemi yarıyor. Yoksa tamamen tesadüfmü benim kodum çalıştı.
Saygılarımla
 
Kod:
Sheets ("100").Select
"100" adlı sayfayı aktif yapar

Benim yazdığım kodda sayfa aktif yapılmaz. Verilerin nereye yazılacağı belirtilir ve yazılır.

Evet B4 hücresinde yazılı olan sayfa ismi ne ise o sayfaya yazar.
 
Anladım hocam. Çok teşekkür ederim ilginize.
Saygılarımla
 
Aşağıdaki kodları deneyin.

Kod:
Sub Kopyala()
    Dim SonSatir As Long
    With Sheets([B4].Text)
        SonSatir = .Cells(Rows.Count, "A").End(3).Row + 1
        .Cells(SonSatir, "A").Value = [C4]
        .Cells(SonSatir, "B").Value = [D4]
        .Cells(SonSatir, "C").Value = [E4]
        .Range("C4:E4").ClearContents
    End With
End Sub
sizin makroda kayıttan sonra silinmiyor, aynı kaydı tekrar kaydetmek isteyince her defasında 3' üncü kayıtta son satırı boş geçiyor, 4 ve sonrasında normal kaydediyor.
 
sizin makroda kayıttan sonra silinmiyor, aynı kaydı tekrar kaydetmek isteyince her defasında 3' üncü kayıtta son satırı boş geçiyor, 4 ve sonrasında normal kaydediyor.

Bir nokta hatası var.
Aşağıdaki kod doğru çalışıyor.

Kod:
Sub Kopyala()
    Dim SonSatir As Long
    With Sheets([B4].Text)
        SonSatir = .Cells(Rows.Count, "A").End(3).Row + 1
        .Cells(SonSatir, "A").Value = [C4]
        .Cells(SonSatir, "B").Value = [D4]
        .Cells(SonSatir, "C").Value = [E4]
        Range("C4:E4").ClearContents
    End With
End Sub
 
Sayın Dalgalikur Hocam,
7. mesajdaki kod B4 te belirtilen sayfaya A2 hücresinden itibaren güzelce aktarıyor. B5 e de hücre adı koysak (diyelim F7) bu durumda F8 den ya da F7 den itibaren yazması için nasıl bir ek olmalı?
Saygılarımla
 
Sayın Dalgalikur Hocam,
7. mesajdaki kod B4 te belirtilen sayfaya A2 hücresinden itibaren güzelce aktarıyor. B5 e de hücre adı koysak (diyelim F7) bu durumda F8 den ya da F7 den itibaren yazması için nasıl bir ek olmalı?
Saygılarımla

Doğru mu anlamışım dener misiniz?

Kod:
Sub Kopyala()
    Dim Satir As Long
    Dim Sutun As Long
    With Sheets([B4].Text)
        Satir = Range(ActiveSheet.Range("B5").Text).Row
        Sutun = Range(ActiveSheet.Range("B5").Text).Column
        .Cells(Satir, Sutun).Value = ActiveSheet.[C4]
        .Cells(Satir, Sutun + 1).Value = ActiveSheet.[D4]
        .Cells(Satir, Sutun + 2).Value = ActiveSheet.[E4]
        ActiveSheet.Range("C4:E4").ClearContents
    End With
End Sub
 
Sayın Dalgalikur Arkadaşım,
İlginize çok teşekkür ederim.
Saygılarımla
 
Geri
Üst