• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü makro ile son satır bulup kopyala yapıştır

  • Konuyu Başlatan Konuyu Başlatan Miraga
  • Başlangıç tarihi Başlangıç tarihi
  • Görüntülenme 1,036
Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Miraga

Destek Ekibi
Katılım
11 May 2022
Mesajlar
1,247
Çözümler
275
Aldığı beğeni
934
Excel V
Office 2016 TR
Konu Sahibi
Merhabalar
Çözüldü - tüm son satırları bulma öncesinde sorumu sordum ÇAYLAK hocamız sağ olsun yardımcı oldu çözümlendi diye işaretledim ama sonrasında 2 adet sorun olduğunu gördüm yardımcı olabilirseniz sevinirim
normalde çalışmasını istediğim sistem
* tablolarda ara boşluklar mevcut bu tüm boşlukların altına sayfa2 deki 4-5-6 ncı satırları kopyalayıp yapıştırıyor
*bunu yaparken son satırı B sütununa göre kıyaslama yapması gerekiyor

gördüğüm sorunlar
1) butona basınca işlemi gerçekleştiriyor
  • ancak kopyalayıp satır ekleyerek yapıyor - satır eklemeden yapıştırması gerekiyor
  • butona birden fazla basınca son Satırı B sutunu olarak görmediğinden alt alta yapıştırıyor
 
Çözüm
Sayın siyar0044 deneyiniz.

Sub KopYap()
Application.ScreenUpdating = False
Dim R1 As Range
Dim R2 As Range
Dim Sf As Worksheet
Dim ss As Integer
Dim i As Integer
Dim Son As Integer

Set R1 = ThisWorkbook.Worksheets("Sayfa2").Rows("4:6")

Set Sf = ThisWorkbook.Worksheets("örnek1")

ss = Sf.Range("B" & Rows.Count).End(xlUp).Row + 1

R1.Copy
Sf.Rows("" & ss & ":" & ss + 2 & "").PasteSpecial Paste:=xlPasteFormats


For i = ss - 1 To 4 Step -1
If Range("B" & i) = "" Then
If Range("B" & i - 1) <> "" Then
R1.Copy
Sf.Rows("" & i & ":" & i + 2 & "").PasteSpecial Paste:=xlPasteFormats
End If
End If
Next
Sf.Cells(3, 2).Select
End Sub
Sayın siyar0044 deneyiniz.

Sub KopYap()
Application.ScreenUpdating = False
Dim R1 As Range
Dim R2 As Range
Dim Sf As Worksheet
Dim ss As Integer
Dim i As Integer
Dim Son As Integer

Set R1 = ThisWorkbook.Worksheets("Sayfa2").Rows("4:6")

Set Sf = ThisWorkbook.Worksheets("örnek1")

ss = Sf.Range("B" & Rows.Count).End(xlUp).Row + 1

R1.Copy
Sf.Rows("" & ss & ":" & ss + 2 & "").PasteSpecial Paste:=xlPasteFormats


For i = ss - 1 To 4 Step -1
If Range("B" & i) = "" Then
If Range("B" & i - 1) <> "" Then
R1.Copy
Sf.Rows("" & i & ":" & i + 2 & "").PasteSpecial Paste:=xlPasteFormats
End If
End If
Next
Sf.Cells(3, 2).Select
End Sub
 
Çözüm
Konusunda zaten ayırma/başlık ve dip verileri düzenleme işlemleri otomatik olarak yapılıyordu. Bu çalışma ne için?
 
Konu Sahibi
Sayın siyar0044 deneyiniz.

Sub KopYap()
Application.ScreenUpdating = False
Dim R1 As Range
Dim R2 As Range
Dim Sf As Worksheet
Dim ss As Integer
Dim i As Integer
Dim Son As Integer

Set R1 = ThisWorkbook.Worksheets("Sayfa2").Rows("4:6")

Set Sf = ThisWorkbook.Worksheets("örnek1")

ss = Sf.Range("B" & Rows.Count).End(xlUp).Row + 1

R1.Copy
Sf.Rows("" & ss & ":" & ss + 2 & "").PasteSpecial Paste:=xlPasteFormats


For i = ss - 1 To 4 Step -1
If Range("B" & i) = "" Then
If Range("B" & i - 1) <> "" Then
R1.Copy
Sf.Rows("" & i & ":" & i + 2 & "").PasteSpecial Paste:=xlPasteFormats
End If
End If
Next
Sf.Cells(3, 2).Select
End Sub
teşekkür ederim
 
Konu Sahibi
Konformül.gifusunda zaten ayırma/başlık ve dip verileri düzenleme işlemleri otomatik olarak yapılıyordu. Bu çalışma ne için?
Hocam Başlık ayırma toplam vb. işlemleri yapıyor ancak düzenleme formül kısmında formüllemede ve rakam değişikliğinde biraz problem yaşatıyordu (birçok sorumun cevabıda orada ama hangi kod ne işe yarıyor bilemediğimden ordan kendim çözemedim )
bende şöyle çözüm yapmaya çalışıyorum (kafamda tasarladığım mantık )
  • girilmiş olan verileri exceldeki veri sırala mantığına göre sıralayacak
  • tarihler arasında boşluk oluşturacak ve en sona alttoplam oluşturacak
  • 1 sonraki sıralama yapılırken hata vermemesi için boş satırdaki hücrelerin biçimlendirme ve değerlerini temizleyecek
bu şekilde hücre biçimlendirme ve formüllerde sıkıntı olmaz diye düşündüm
* öğrenme amacı ilede parça parca soruyorum

sizin alt toplam için hazırlamış olduğunuz formül ü uygulamayı deneyecem
 
yolunuz doğru değil bence;
kodun anlamadığınız yerini sorup öğrenmeye, araştırarak pekiştirmek yerine anlamaya çalışmadan yeni sorular sormak, öğrenmenize katkı sağlamaz. sadece yeni kodlar ve çözümlerle kafanız daha da karışır.
 
Konu Sahibi
yolunuz doğru değil bence;
kodun anlamadığınız yerini sorup öğrenmeye, araştırarak pekiştirmek yerine anlamaya çalışmadan yeni sorular sormak, öğrenmenize katkı sağlamaz. sadece yeni kodlar ve çözümlerle kafanız daha da karışır.
Hocam Makroyu yeni öğrenmeye çalışıyorum sizin ve hocalarımızın kıymetli tavsiyeleri çok önemli
çok teşekkür ederim
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst