Çözüldü Hücre seçildiğinde işlem yaptırma

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

yusuf.or

Yeni Üye
Katılım
15 Kas 2020
Mesajlar
2
En iyi yanıt
0
Puanları
1
Yaş
31
Konum
bursa
Ad Soyad
yusuf or
Merhaba;
Aşağıdaki formül ile bir hücreyi seçtiğimde sayfadaki bazı bilgileri diğer sayfaya istediğim yere kaydettiriyorum. Bu kodu yıllardır sorunsuz kullanıyorum.


Private Sub Worksheet_selectionChange(ByVal Target As Range)
If Intersect(Target, Range("c3123")) Is Nothing Then Exit Sub
i = Sheets("MALI_KAY").Cells(65536, 1).End(xlUp).Row + 1
Sheets("MALI_KAY").Cells(i, 1).Value = Sheets("MALI_ISLM").Cells(2, 3).Value
Sheets("MALI_KAY").Cells(i, 2).Value = Sheets("MALI_ISLM").Cells(3, 3).Value
Sheets("MALI_KAY").Cells(i, 3).Value = Sheets("MALI_ISLM").Cells(1003, 3).Value
Sheets("MALI_KAY").Cells(i, 4).Value = Sheets("MALI_ISLM").Cells(2010, 3).Value
Sheets("MALI_KAY").Cells(i, 5).Value = Sheets("MALI_ISLM").Cells(3015, 3).Value
Sheets("MALI_KAY").Cells(i, 6).Value = Sheets("MALI_ISLM").Cells(3117, 3).Value
Sheets("MALI_KAY").Cells(i, 7).Value = Sheets("MALI_ISLM").Cells(3118, 3).Value
Sheets("MALI_KAY").Cells(i, 8).Value = Sheets("MALI_ISLM").Cells(3119, 3).Value
Sheets("MALI_KAY").Cells(i, 9).Value = Sheets("MALI_ISLM").Cells(3120, 3).Value
Sheets("MALI_KAY").Cells(i, 10).Value = Sheets("MALI_ISLM").Cells(3121, 3).Value
Sheets("MALI_KAY").Cells(i, 11).Value = Sheets("MALI_ISLM").Cells(3122, 3).Value
Range("C3,C1003,C2010,C3015,C3117,C3118,C3119,C3120,C3121,C3122").Select
Selection.ClearContents
Range("C2").Select
End Sub


Şu an ihtiyacım olan ise aynı sayfada başka bir hücre seçildiğinde de benzer şekilde başka bazı verilerin diğer sayfaya kaydolması. Bununla ilgili kendim aşağıdaki gibi bir şeyler yapmaya çalıştım ama çalıştıramadım bir türlü. Aşağıdaki kodlarda hata nerededir? Nasıl olması gerekir?
Şimdiden çok teşekkür ederim.



Private Sub Worksheet_selectionChange(ByVal Target As Range)
If Intersect(Target, Range("c3123")) Is Nothing Then Exit Sub
i = Sheets("MALI_KAY").Cells(65536, 1).End(xlUp).Row + 1
Sheets("MALI_KAY").Cells(i, 1).Value = Sheets("MALI_ISLM").Cells(2, 3).Value
Sheets("MALI_KAY").Cells(i, 2).Value = Sheets("MALI_ISLM").Cells(3, 3).Value
Sheets("MALI_KAY").Cells(i, 3).Value = Sheets("MALI_ISLM").Cells(1003, 3).Value
Sheets("MALI_KAY").Cells(i, 4).Value = Sheets("MALI_ISLM").Cells(2010, 3).Value
Sheets("MALI_KAY").Cells(i, 5).Value = Sheets("MALI_ISLM").Cells(3015, 3).Value
Sheets("MALI_KAY").Cells(i, 6).Value = Sheets("MALI_ISLM").Cells(3117, 3).Value
Sheets("MALI_KAY").Cells(i, 7).Value = Sheets("MALI_ISLM").Cells(3118, 3).Value
Sheets("MALI_KAY").Cells(i, 8).Value = Sheets("MALI_ISLM").Cells(3119, 3).Value
Sheets("MALI_KAY").Cells(i, 9).Value = Sheets("MALI_ISLM").Cells(3120, 3).Value
Sheets("MALI_KAY").Cells(i, 10).Value = Sheets("MALI_ISLM").Cells(3121, 3).Value
Sheets("MALI_KAY").Cells(i, 11).Value = Sheets("MALI_ISLM").Cells(3122, 3).Value
Range("C3,C1003,C2010,C3015,C3117,C3118,C3119,C3120,C3121,C3122").Select
Selection.ClearContents
Range("C2").Select

End If
If Intersect(Target, Range("P3123")) Is Nothing Then Exit Sub

j = Sheets("MALI_KAY").Cells(65536, 1).End(xlUp).Row + 1
Sheets("MALI_KAY").Cells(j, 1).Value = Sheets("MALI_ISLM").Cells(2, 16).Value
Sheets("MALI_KAY").Cells(j, 12).Value = Sheets("MALI_ISLM").Cells(3, 16).Value
Sheets("MALI_KAY").Cells(j, 3).Value = Sheets("MALI_ISLM").Cells(1003, 16).Value
Sheets("MALI_KAY").Cells(j, 13).Value = Sheets("MALI_ISLM").Cells(2010, 16).Value
Sheets("MALI_KAY").Cells(j, 5).Value = Sheets("MALI_ISLM").Cells(3015, 16).Value
Sheets("MALI_KAY").Cells(j, 9).Value = Sheets("MALI_ISLM").Cells(3120, 16).Value
Sheets("MALI_KAY").Cells(j, 10).Value = Sheets("MALI_ISLM").Cells(3121, 16).Value
Sheets("MALI_KAY").Cells(j, 11).Value = Sheets("MALI_ISLM").Cells(3122, 16).Value
Range("p3,p1003,p2010,p3015,p3117,p3118,p3119,p3120,p3121,p3122").Select
Selection.ClearContents
Range("p2").Select
End Sub
 

muygun

Uzman
Katılım
19 Ağu 2018
Mesajlar
171
En iyi yanıt
20
Puanları
28
Konum
Excel 2003
Ad Soyad
Mustafa UYGUN
Office Versiyon
Office 2003
Merhaba;
Kodlarınızı bu şekilde düzenleyerek deneyin.
İyi çalışmalar.
C++:
Private Sub Worksheet_selectionChange(ByVal Target As Range)
Set s1 = ThisWorkbook.Worksheets("MALI_ISLM") 'bu sayfa
Set s2 = ThisWorkbook.Worksheets("MALI_KAY")
sat = Target.Row
süt = Target.Column
If sat = 3213 And süt = 3 And s1.Cells(sat, süt) <> "" Then
Rem c3213 seçilince ve ilgili hücre boş değilse işlemleri
sonn = s2.Range("A65536").End(xlUp).Row + 1
s2.Cells(sonn, 1).Value = s1.Cells(2, 3).Value
'...
'...
MsgBox ("C3213 işlemleri yapıldı.")
End If
If sat = 3213 And süt = 16 And s1.Cells(sat, süt) <> "" Then
Rem p3213 seçilince ve ilgili hücre boş değilse işlemleri
son1 = s2.Range("A65536").End(xlUp).Row + 1
s2.Cells(son1, 1).Value = s1.Cells(2, 3).Value
'...
'...
MsgBox ("P3213 işlemleri yapıldı.")
End If
End Sub
 
Moderatör tarafında düzenlendi:

yusuf.or

Yeni Üye
Katılım
15 Kas 2020
Mesajlar
2
En iyi yanıt
0
Puanları
1
Yaş
31
Konum
bursa
Ad Soyad
yusuf or
Çok teşekkür ederim. Çok büyük katkısı oldu.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst Alt