- Katılım
- 12 Kasım 2007
- Mesajlar
- 327
- Excel Vers. ve Dili
- excel 2003
Foruma üye herkesin geçmiş bayramını kutluyorum.
Değerli arkadaşlar.
Aynı sayfa için geçerli olmak üzere birden fazla sayıda private makroyu sayfaya nasıl yazarız.
Örneğin aşağıdaki 3 makro aynı anda yazıldığında hata veriyor.
ilgilenecek arkadaşlara teşekkür ederim.
1. makro
'BÜYÜK HARFE ÇEVİRME MAKROSU
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Application.EnableEvents = False
Target = UCase(Target)
Application.EnableEvents = True
End Sub
2. makro
'Enter tuşu yönlendirme makrosu
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [A:H]) Is Nothing Then Exit Sub
If Target.Column = 8 Then
Target.Offset(1, -7).Select
Else
Target.Offset(0, 1).Select
End If
Son:
End Sub
3. makro
'DEĞER GİRİLEN SATIRLARA SIRA NUMARASI VERME
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [d:d]) Is Nothing Then Exit Sub
Dim i As Long, sr As Long
[A2:A500].ClearContents
For i = 2 To [D500].End(3).Row
If Not Cells(i, 4) = "" Then
sr = sr + 1
Cells(i, 1) = sr
End If
Next
DrawingObjects:=False, Contents:=True, Scenarios:= _
True, AllowFormattingCells:=True
End Sub
Değerli arkadaşlar.
Aynı sayfa için geçerli olmak üzere birden fazla sayıda private makroyu sayfaya nasıl yazarız.
Örneğin aşağıdaki 3 makro aynı anda yazıldığında hata veriyor.
ilgilenecek arkadaşlara teşekkür ederim.
1. makro
'BÜYÜK HARFE ÇEVİRME MAKROSU
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Application.EnableEvents = False
Target = UCase(Target)
Application.EnableEvents = True
End Sub
2. makro
'Enter tuşu yönlendirme makrosu
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [A:H]) Is Nothing Then Exit Sub
If Target.Column = 8 Then
Target.Offset(1, -7).Select
Else
Target.Offset(0, 1).Select
End If
Son:
End Sub
3. makro
'DEĞER GİRİLEN SATIRLARA SIRA NUMARASI VERME
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [d:d]) Is Nothing Then Exit Sub
Dim i As Long, sr As Long
[A2:A500].ClearContents
For i = 2 To [D500].End(3).Row
If Not Cells(i, 4) = "" Then
sr = sr + 1
Cells(i, 1) = sr
End If
Next
DrawingObjects:=False, Contents:=True, Scenarios:= _
True, AllowFormattingCells:=True
End Sub