- Katılım
- 26 Eylül 2007
- Mesajlar
- 9,421
- Excel Vers. ve Dili
- excel 2010
merhaba
aynı sayfada işlem yapan uzun prosedürlerden oluşan bikaç makrom var ve birleştirmeye çalışınca sorun yaşadım.
1-) Private Sub Worksheet_Change ile Private Sub Worksheet_SelectionChange arasındaki fark nedir? hangi mantığı kullanır?
2-) kodların hepsini sayfanın kod bölümüne yazmak yerine Private Sub Worksheet_Change altında aşağıdaki gibi bir prosedür uygulasam ve asıl kodları modüllere ayrı ayrı yazsam ne kadar kullanışlı olur, sorun yaşarmıyım?
Private Sub Worksheet_Change(ByVal Target As Range)
'[a1:c10] aralığında işlem yapılıyorsa makro1 çalışsın
If Intersect(Target, [a1:c10]) Then
Call makro1
'[d1:g10] aralığında işlem yapılıyorsa makro2 çalışsın
If Intersect(Target, [d1:g10]) Then
Call makro2
'[h1:k10] aralığında işlem yapılıyorsa makro3 çalışsın
If Intersect(Target, [h1:k10]) Then
Call makro3
End Sub
3-)
Private Sub Worksheet_Change(ByVal Target As Range)
'[a1:c10] aralığında işlem yapılıyorsa makro1 çalışsın
If Intersect(Target, [a1:c10]) Then
Call makro1
End Sub
şeklinde denediğimde sorun çıkmadı ama makro2 için ilave ettiğimde End Sub satırında hata verdi, neden?
aynı sayfada işlem yapan uzun prosedürlerden oluşan bikaç makrom var ve birleştirmeye çalışınca sorun yaşadım.
1-) Private Sub Worksheet_Change ile Private Sub Worksheet_SelectionChange arasındaki fark nedir? hangi mantığı kullanır?
2-) kodların hepsini sayfanın kod bölümüne yazmak yerine Private Sub Worksheet_Change altında aşağıdaki gibi bir prosedür uygulasam ve asıl kodları modüllere ayrı ayrı yazsam ne kadar kullanışlı olur, sorun yaşarmıyım?
Private Sub Worksheet_Change(ByVal Target As Range)
'[a1:c10] aralığında işlem yapılıyorsa makro1 çalışsın
If Intersect(Target, [a1:c10]) Then
Call makro1
'[d1:g10] aralığında işlem yapılıyorsa makro2 çalışsın
If Intersect(Target, [d1:g10]) Then
Call makro2
'[h1:k10] aralığında işlem yapılıyorsa makro3 çalışsın
If Intersect(Target, [h1:k10]) Then
Call makro3
End Sub
3-)
Private Sub Worksheet_Change(ByVal Target As Range)
'[a1:c10] aralığında işlem yapılıyorsa makro1 çalışsın
If Intersect(Target, [a1:c10]) Then
Call makro1
End Sub
şeklinde denediğimde sorun çıkmadı ama makro2 için ilave ettiğimde End Sub satırında hata verdi, neden?