DİĞER SAYFAYA VERİ AKTARMA

Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Değerli Üstadlarım;
Forum içinde aradığımı tam olarak bulamadım.
VERİ Sayfasında bulunan J Sütununda TAMAMLANDI yazınca o satırın tamamını ARŞİV sayfasına bir önceki verinin altına yazacak ve aynı satırı VERİ sayfasından silecek bir kod rica ediyorum.
Şimdiden teşekkürler.
Örnek dosyayı ekledim.

https://www.dosyaupload.com/j8tG
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
J sütununda yanlış veri doğrulama yapmışsınız.Onu sildim.Dosyanız linktedir.

DOSYAYI INDIR

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh As Worksheet, sonsat As Long
If Intersect(Target, Range("J3:J" & Rows.Count)) Is Nothing Then Exit Sub
Set sh = Sheets("ARŞİV")
sonsat = sh.Cells(Rows.Count, "J").End(xlUp).Row + 1
If Target.Value = "TAMAMLANDI" Then
    Range("B" & Target.Row & ":J" & Target.Row).Copy sh.Range("B" & sonsat)
End If
End Sub
 
Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
J sütununda yanlış veri doğrulama yapmışsınız.Onu sildim.Dosyanız linktedir.

DOSYAYI INDIR

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh As Worksheet, sonsat As Long
If Intersect(Target, Range("J3:J" & Rows.Count)) Is Nothing Then Exit Sub
Set sh = Sheets("ARŞİV")
sonsat = sh.Cells(Rows.Count, "J").End(xlUp).Row + 1
If Target.Value = "TAMAMLANDI" Then
    Range("B" & Target.Row & ":J" & Target.Row).Copy sh.Range("B" & sonsat)
End If
End Sub
Sayın Hocam kod tam istediğim gibi teşekkür ederim; ancak bir isteğim daha var. veri sayfasında diğer sayfaya aktarılan satır veri sayfasından silecek kod ekleme yapmak mümkün değil mi acaba.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sayın Hocam kod tam istediğim gibi teşekkür ederim; ancak bir isteğim daha var. veri sayfasında diğer sayfaya aktarılan satır veri sayfasından silecek kod ekleme yapmak mümkün değil mi acaba.
Sonrada değişiklik yapmak için kod isteyecen tahminimce. :)
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Böyle yapmayın.
Bir sayfayı veritabanı için kullanın.
Sonra diğer sayfaya O sayfadan veri çekin.Mesela TAMAMLANDI yazanları çekin.
Vt den veri silersen o veri diğer sayfaya zaten gelmeyecek
Siz tersten tutuyorsunuz işi.:cool:
 
Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Sonrada değişiklik yapmak için kod isteyecen tahminimce. :)
Bu son isteğimdi hocam. :))
Böyle yapmayın.
Bir sayfayı veritabanı için kullanın.
Sonra diğer sayfaya O sayfadan veri çekin.Mesela TAMAMLANDI yazanları çekin.
Vt den veri silersen o veri diğer sayfaya zaten gelmeyecek
Siz tersten tutuyorsunuz işi.:cool:
Hocam amacım veri sayfasında tamamlanan işleri kaldırıp sadece bekleyen işleri görmek istiyorum. tamamlananları da aynı zamanda arşivlemek istiyorum. eğer bu olmuyorsa bir üçüncü sayfa eklemek suretiyle olur mu mesela GÜNCEL sayfası
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Daha fazla ilerlemeyecem.
Dosyanızdaki autoopen prosedüründe hata oluşuyor.
Beklemeye alıyor dosyayı.
 

muratboz06

Destek Ekibi
Destek Ekibi
Katılım
23 Mart 2017
Mesajlar
568
Excel Vers. ve Dili
Office365 TR
Orion Bey'in koduna ekleme yapılmıştır.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Dim sh As Worksheet, sonsat As Long, arr As Variant
If Intersect(Target, Range("J3:J100000")) Is Nothing Then Exit Sub
Set sh = Sheets("ARŞİV")
sonsat = sh.Cells(Rows.Count, "J").End(xlUp).Row + 1
If Target.Text = "TAMAMLANDI" Then
Range("B" & Target.Row & ":J" & Target.Row).Copy sh.Range("B" & sonsat)
Range("B" & Target.Row & ":J" & Target.Row).Delete Shift:=xlUp
End If
Application.EnableEvents = True
End Sub
 
Katılım
24 Temmuz 2019
Mesajlar
413
Excel Vers. ve Dili
EXCEL 2010 TÜRKÇE
Altın Üyelik Bitiş Tarihi
25-12-2023
Orion Bey'in koduna ekleme yapılmıştır.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Dim sh As Worksheet, sonsat As Long, arr As Variant
If Intersect(Target, Range("J3:J100000")) Is Nothing Then Exit Sub
Set sh = Sheets("ARŞİV")
sonsat = sh.Cells(Rows.Count, "J").End(xlUp).Row + 1
If Target.Text = "TAMAMLANDI" Then
Range("B" & Target.Row & ":J" & Target.Row).Copy sh.Range("B" & sonsat)
Range("B" & Target.Row & ":J" & Target.Row).Delete Shift:=xlUp
End If
Application.EnableEvents = True
End Sub[/QUOTE
]Sayın Muratboz06 teşekkürler. Ufak bir ekleme yeterli oldu.
Sayın Orion1 Üstadıma da teşekkürlerimi bir kez daha yineliyorum.
 
Üst