• DİKKAT

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

Sayfa1den Sayfa2 ye Birleştirilmiş Hücreye Veri Aktarma

  • Konbuyu başlatan Konbuyu başlatan askm
  • Başlangıç tarihi Başlangıç tarihi

askm

Destek Ekibi
Destek Ekibi
Katılım
4 Haziran 2005
Mesajlar
2,746
Excel Vers. ve Dili
2010-2016
Kolay gelsin.
Sayfa1 veriler, Sayfa2 de tablo mevcut. Sayfa1 deki veriler Sayfa2 ye aktarılacak.
1. Yalnız örneğin A17 den başlayan verileri Sayfa2 de I64 ten itibaren IJKLMN birleştirilmiş hücresine gelecek.
2. Sayfa1 deki her 25 veriyi aldıktan sonra yazdıracak, sonra 2. 25 veriyi alacak.

Sayfa1 deki liste bazen 100 bazen 2000 oluyor. Yani değişken.
İlgilenen üstadlara şimdiden teşekkürler.
 
Örnek dosya olmadığından, muhtemelen başka istekleriniz olacak ya da tam olarak istediğiniz sonucu vermeyecek ancak aşağıdaki kodları bir modüle kopyalayıp deneyiniz:

Kod:
Sub aktar()
Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")

son = WorksheetFunction.Max(s1.Cells(Rows.Count, "A").End(3).Row, 17)
For i = 17 To son Step 25
    son2 = WorksheetFunction.Max(s2.Cells(Rows.Count, "I").End(3).Row, 64)
    s2.Range("I64:M" & son2).ClearContents
    s2.[I64] = s1.Cells(i, "A")
    s2.[I65] = s1.Cells(i + 1, "A")
    s2.[I66] = s1.Cells(i + 2, "A")
    s2.[I67] = s1.Cells(i + 3, "A")
    s2.[I68] = s1.Cells(i + 4, "A")
    s2.[I69] = s1.Cells(i + 5, "A")
    s2.[I70] = s1.Cells(i + 6, "A")
    s2.[I71] = s1.Cells(i + 7, "A")
    s2.[I72] = s1.Cells(i + 8, "A")
    s2.[I73] = s1.Cells(i + 9, "A")
    s2.[I74] = s1.Cells(i + 10, "A")
    s2.[I75] = s1.Cells(i + 11, "A")
    s2.[I76] = s1.Cells(i + 12, "A")
    s2.[I77] = s1.Cells(i + 13, "A")
    s2.[I78] = s1.Cells(i + 14, "A")
    s2.[I79] = s1.Cells(i + 15, "A")
    s2.[I80] = s1.Cells(i + 16, "A")
    s2.[I81] = s1.Cells(i + 17, "A")
    s2.[I82] = s1.Cells(i + 18, "A")
    s2.[I83] = s1.Cells(i + 19, "A")
    s2.[I84] = s1.Cells(i + 20, "A")
    s2.[I85] = s1.Cells(i + 21, "A")
    s2.[I86] = s1.Cells(i + 22, "A")
    s2.[I87] = s1.Cells(i + 23, "A")
    s2.[I88] = s1.Cells(i + 24, "A")
    s2.PrintOut
Next

End Sub
 
Ekteki örnekte dosyada x işaretli yerler aktarılacak.
 

Ekli dosyalar

Kodda birleştirilmiş hucre olduğu için s2.Range("I64:M" & son2).ClearContents satırında hata veriyor.
 
Siz birleştirmenin I:M arası olduğunu yazmıştınız. Halbuki dosyanızda I:AO arası birleştirilmiş. Ayrıca sütunlar birleşik olduğu gibi satırlar da birleştirilmiş.

Excelde eğer çok gerekli değilse hücrelerin birleştirilmesini istemeyiz. Dosyanızın bu haliyle makro ve veya formül uygulamak çok zor. Yerinizde olsam dosyadaki özellikle veri alanındaki tüm birleştirmeleri iptal eder, verileri mümkün olduğunda tek hücreye yazmaya çalışırım.
 
Sayın YUSUF44 ilk önce soruda ornek kod olursa ben eklerim diye düşündüm. Sonra genelde ornek olmayınca işlem yapılmıyor diye dosyayı ekledim. Eklediğim excel standart bir form.
 
Geri
Üst