hücre değeri kadar o satırdan kopyalama

Katılım
18 Mart 2008
Mesajlar
112
Excel Vers. ve Dili
Excel 2007 TR
Selamlar,
Diyelim ki, C3 hücresinde 5 değeri var, bu değerin olduğu satırı, tablonun altına, toplam 5 kez kopyalamak için nasıl bir kod oluşturabiliriz? Eğer bu değer 5 değil, 1 ise hiç bir şey değişmeyecek, 2 ise 1 adet aynı satırdan kopyalayacak.
Yardımlarınız için teşekkür ederim.
Saygılar, sevgiler.
Yavuz Tümer
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki kodu denermisiniz.

Kod:
Sub KOPYALA()
    If [C3] > 1 Then Rows(3).Copy Rows("4:" & [C3] + 3)
End Sub
 
Katılım
18 Mart 2008
Mesajlar
112
Excel Vers. ve Dili
Excel 2007 TR
Selam hocam,
nasılsın, umarım herşey gönlünüzcedir.
hemen deniyorum.
Kendinize çok ama çok iyi bakın.
Sevgiler,
Yavuz
 
Katılım
18 Mart 2008
Mesajlar
112
Excel Vers. ve Dili
Excel 2007 TR
Yok Hocam,
Bu kod değil, şöyle açıklamayı denemek istiyorum.
A kolonundan M kolonuna uzanan bir tablom var,
C kolonunda değerler var1-2-3-4 gibi.
Bir kod ile, c kolonundaki değerler kadar her bir satırı tablonun altına doğru çoğaltmak istiyorum.
mesela, C2 de 3 var ise, o satırın 2 kere daha kopyalanmasını istiyorum.
veya 4 var ise, o satırı 3 kez daha kopyalamak.
eğer bu değer 1 ise de kopyalama yapmadan geçsin, işleme, aşağı doru devam etsin.
Umarım açıklayabilmişimdir.
Gecenin bu vakti, sağol hocam.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Tablonun altına dediğiniz kısmı anlamadım. Örnek dosya eklerseniz çözüme çok hızlı bir şekilde ulaşabiliriz.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki kodu denermisiniz.

Kod:
Sub AKTAR()
    Set S1 = Sheets("Sayfa1")
    Set S2 = Sheets("Sayfa2")
    S2.Cells.Clear
    SATIR = 1
    For X = 1 To S1.[A65536].End(3).Row
    If S1.Cells(X, 3) <> "" Then
    For Y = 1 To S1.Cells(X, 3)
    S2.Range("A" & SATIR & ":G" & SATIR).Value = S1.Range("A" & X & ":G" & X).Value
    SATIR = SATIR + 1
    Next
    End If
    Next
    Set S1 = Nothing
    Set S2 = Nothing
    MsgBox "&#304;&#350;LEM&#304;N&#304;Z TAMAMLANMI&#350;TIR.", vbInformation
End Sub
 
Katılım
18 Mart 2008
Mesajlar
112
Excel Vers. ve Dili
Excel 2007 TR
Korhan hocam,
&#199;ok te&#351;ekk&#252;r ederim. Sorunsuz &#231;al&#305;&#351;&#305;yor.
Ellerine sa&#287;l&#305;k.
Yavuz T&#252;mer
 
Üst