Özel yapıştır makrosu

Katılım
13 Kasım 2007
Mesajlar
45
Excel Vers. ve Dili
2019 tr
Altın Üyelik Bitiş Tarihi
29.05.2022
Herkese iyi günler.

Aşağıdaki makro ile kopyala yapıştır yapıyorum. Ama kaynak hücredeki tüm biçimlendirmeleri hedef hücreye aynen yapıştırıyor. Benim istediğim sadece değerleri yapıştırması.

Kendim makro kaydedip koduna baktım forumda da aradım. Ama benim koda tam uyarlayamadım. Değişik yerlere ilave ettim ama kodu tam nereye koyacağımı bulamadım. Bir şeyi eksik yapıyorum ama çözemedim.
Yardımcı olacak arkadaşlara şimdiden teşekkürler.



Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("AN2:AN" & Rows.Count)) Is Nothing Then Exit Sub
a = Target.Row
If Target.Offset(0, 1) <> "AKTARILDI" Then
If WorksheetFunction.CountBlank(Range("A" & a & ":E" & a)) = 0 Then
For sayfa = 1 To Sheets.Count
If Sheets(sayfa).Name = Target Then
yeni = Sheets(sayfa).Cells(Rows.Count, "C").End(3).Row + 1
Range("B" & a).Copy Sheets(sayfa).Cells(yeni, "C")
PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
sayfa = Sheets.Count
Target.Offset(0, 1) = "AKTARILDI"

End If
Next
End If

End If

End Sub
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba
Kodların içindeki ilgili bölümü şöyle düzeltip deneyin.
Kod:
'...
'....kodlarınız
'....

yeni = Sheets(sayfa).Cells(Rows.Count, "C").End(3).Row + 1
[COLOR="Red"]Range("B" & a).Copy
 Sheets(sayfa).Cells(yeni, "C").PasteSpecial Paste:=xlPasteValues[/COLOR]
sayfa = Sheets.Count
Target.Offset(0, 1) = "AKTARILDI"
'.....
'..
'....diğer kodlar
'....
 
Katılım
13 Kasım 2007
Mesajlar
45
Excel Vers. ve Dili
2019 tr
Altın Üyelik Bitiş Tarihi
29.05.2022
Merhaba
Kodların içindeki ilgili bölümü şöyle düzeltip deneyin.
Kod:
'...
'....kodlarınız
'....

yeni = Sheets(sayfa).Cells(Rows.Count, "C").End(3).Row + 1
[COLOR="Red"]Range("B" & a).Copy
 Sheets(sayfa).Cells(yeni, "C").PasteSpecial Paste:=xlPasteValues[/COLOR]
sayfa = Sheets.Count
Target.Offset(0, 1) = "AKTARILDI"
'.....
'..
'....diğer kodlar
'....

Sayın PLİNT kod çalışıyor hızlı cevabınız için teşekkürler.

İki ufak sorun var gibi.
Birincisi kopyalanan kaynak hücrenin üzeri seçili olarak kalıyordu. Application.CutCopyMode = False kodunu ilave edip seçili kalma sorunu çözdüm.

İkincisi kod çalışınca ekran tazeleme yapıyor. Ekranda bir hareketlenme oluyor. Önceki kullandığım kodda hareket olmuyordu. Size zahmet ekteki dosyada deneme yaparsanız dediğimi daha iyi anlarsınız umarım. Yardımlarınız için teşekkürler.
 

Ekli dosyalar

Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba
Dosyanıza bakma imkanım yok ama; amaç sadece değeri aktarmak olduğuna göre kopyalamak yerine eşitlemek yeterli görünüyor.
Kod:
[SIZE="2"]'.....
'.....kodlarınız
'....
If Sheets(sayfa).Name = Target Then
yeni = Sheets(sayfa).Cells(Rows.Count, "C").End(3).Row + 1
[COLOR="Red"]Sheets(sayfa).Cells(yeni, "C").Value = Range("B" & a).Value[/COLOR]
sayfa = Sheets.Count
Target.Offset(0, 1) = "AKTARILDI"
'....
'.....

 [/SIZE]
Kopyalama içinde kodlara aşağıdaki mavi satırları ekleyip deneyebilirsiniz.
Kod:
[SIZE="2"]Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("AN2:AN" & Rows.Count)) Is Nothing Then Exit Sub
a = Target.Row
If Target.Offset(0, 1) <> "AKTARILDI" Then
If WorksheetFunction.CountBlank(Range("A" & a & ":E" & a)) = 0 Then
For sayfa = 1 To Sheets.Count
If Sheets(sayfa).Name = Target Then
yeni = Sheets(sayfa).Cells(Rows.Count, "C").End(3).Row + 1
[COLOR="Blue"]Application.Calculation = xlCalculationManual 
Application.ScreenUpdating = False[/COLOR]
Range("B" & a).Copy
Sheets(sayfa).Cells(yeni, "C").PasteSpecial Paste:=xlPasteValues
[COLOR="Blue"]Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic[/COLOR]
sayfa = Sheets.Count
Target.Offset(0, 1) = "AKTARILDI"
End If
Next
End If
End If
[COLOR="Blue"]Application.CutCopyMode = False[/COLOR]
End Sub [/SIZE]
 
Katılım
13 Kasım 2007
Mesajlar
45
Excel Vers. ve Dili
2019 tr
Altın Üyelik Bitiş Tarihi
29.05.2022
Şimdi problem çözüldü. Çok teşekkürler yardımınız için. İyi günler kolay gelsin.
 
Katılım
22 Şubat 2023
Mesajlar
227
Excel Vers. ve Dili
Türkçe
A13 hücresindeki metni C13 'e farklı olarak yapıştırmak istiyorum otomatik olarak Makro ile bunu nasıl yapabilirim Yardımcı olabilir misiniz hocam rica etsem
 
Üst