Aktif Hücre 4.satırdan aşağıda ise "GH" yazılamasın

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba Arkadaşlar
İşlem yapılacak hücre 9. satırdan aşağıda ise "GH" yazılamasın istiyorum. Aşağıdaki kodlar denedim ama çalışmadı.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 4 Then
ActiveCell <> "GH"
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 4 Then
Target.Offset(0, 0) <> "GH"
End If
End Sub
 

EmrExcel16

Destek Ekibi
Destek Ekibi
Katılım
1 Kasım 2012
Mesajlar
1,520
Excel Vers. ve Dili
Office 365 Türkçe
Kod:
If Target.Offset(0, 0) = "GH" Then
    Msgbox "GH yazilamaz"
End If
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Kod:
If Target.Offset(0, 0) = "GH" Then
    Msgbox "GH yazilamaz"
End If
Üstad çok teşekkürler. Peki 3 koşul olması durumunda kod nasıl olmalı acaba
Örneğin,GH veya YT veya PL yazılması dururmunda kod çalışsın istenirse
Target.Offset(0, 0) = "GH"
Target.Offset(0, 0) = "YT"
Target.Offset(0, 0) = "PL"
 

Haluk

𐱅𐰇𐰼𐰚
Katılım
7 Temmuz 2004
Mesajlar
12,291
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Özel kişi
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row > 4 Then
        If Target = "GH" Or Target = "YT" Or Target = "PL" Then
            MsgBox "yasak..."
            Target = ""
        End If
    End If
End Sub
.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,461
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

Kod:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row > 4 Then
        Select Case UCase(Target)
            Case "GH", "YT", "PL"
            MsgBox "Lütfen kriterlere uygun veri girişi yapınız!", vbCritical
            Target = ""
            Target.Select
        End Select
    End If
End Sub
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row > 4 Then
        If Target = "GH" Or Target = "YT" Or Target = "PL" Then
            MsgBox "yasak..."
            Target = ""
        End If
    End If
End Sub
.
Haluk üstadım çok teşekkürler. Sağlıcakla kalın
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Alternatif;

Kod:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Row > 4 Then
        Select Case UCase(Target)
            Case "GH", "YT", "PL"
            MsgBox "Lütfen kriterlere uygun veri girişi yapınız!", vbCritical
            Target = ""
            Target.Select
        End Select
    End If
End Sub
Üstad çok teşekkür ederim. Sağlıcakla kalın
 
Üst