- Katılım
- 4 Nisan 2006
- Mesajlar
- 999
- Excel Vers. ve Dili
- OFFICE 2021 Türkçe
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Satır As Long, Yeni_Sayfa As Worksheet, Bul As Range
If Intersect(Target, [U:U]) Is Nothing Then Exit Sub
On Error GoTo Son
If Target <> "" Then
If UCase(Target.Offset(0, 1)) <> Target Then
Application.ScreenUpdating = False
If Sayfa_Varmı(Target.Value) = True Then
With Sheets(Target.Text)
Satır = .Range("A65536").End(3).Row + 1
Rows(Target.Row).Copy .Range("A" & Satır)
If Target.Offset(0, 1) <> "" Then
Set Bul = Sheets(Target.Offset(0, 1).Text).Range("A:A").Find(Target.Offset(0, -20), LookAt:=xlWhole)
If Not Bul Is Nothing Then
Sheets(Target.Offset(0, 1).Text).Rows(Bul.Row).Delete
End If
Set Bul = Nothing
End If
Target.Offset(0, 1) = Target
End With
Else
Set Yeni_Sayfa = Sheets.Add
Yeni_Sayfa.Move After:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Target.Text
Sheets("DATA").Select
Sheets("DATA").Rows("1:1").Copy Yeni_Sayfa.Range("A1")
Satır = Yeni_Sayfa.Range("A65536").End(3).Row + 1
Sheets("DATA").Rows(Target.Row).Copy Yeni_Sayfa.Range("A" & Satır)
If Target.Offset(0, 1) <> "" Then
Set Bul = Sheets(Target.Offset(0, 1).Text).Range("A:A").Find(Target.Offset(0, -20), LookAt:=xlWhole)
If Not Bul Is Nothing Then
Sheets(Target.Offset(0, 1).Text).Rows(Bul.Row).Delete
End If
Set Bul = Nothing
End If
Target.Offset(0, 1) = Target
Set Yeni_Sayfa = Nothing
End If
Application.ScreenUpdating = True
Else
MsgBox "Bu kayıt daha önce aktarılmıştır.", vbCritical, "Dikkat !"
End If
End If
Exit Sub
Son:
End Sub
Option Explicit
Function Sayfa_Varmı(Sayfa_Adı As String) As Boolean
On Error Resume Next
Sayfa_Varmı = CBool(Len(Worksheets(Sayfa_Adı).Name) > 0)
End Function