Soru Hücreye yazılan tarihi yazım aşamasında kontrol

Katılım
23 Temmuz 2019
Mesajlar
37
Excel Vers. ve Dili
İş Office 2010
Altın Üyelik Bitiş Tarihi
01-10-2025
Merhaba üstadlar,
B9 - E9 - H9 hücrelerine tarih yazıyorum fakat

B9, en küçük tarih olması gerekiyor
E9, B9'dan Büyük H9'dan küçük olması gerekiyor
H9, B9 ve E9'dan büyük olmalı. en büyük yani

bu hücrelere tarihleri yazıp entere bastıktan sonra kaydetmesin tarihi düzeltin diye msgbox versin bu şekilde bir kontrol koyulabilir mi ?

yardımlarınız için şimdiden teşekkür ederim.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,743
Excel Vers. ve Dili
2021 Türkçe
Merhaba.

Sayfa adını sağ tıklatıp "Kod Görüntüle" seçin.

Aşağıdaki kodu açılan sayfaya kopyalayın.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("B9,E9,H9")) Is Nothing Then
        If Range("B" & Target.Row) > Range("E" & Target.Row) Then
            MsgBox "B sütunu E sütunundan büyük olamaz."
            Target.Select
        ElseIf Range("E" & Target.Row) > Range("H" & Target.Row) Then
            MsgBox "E sütunu H sütunundan büyük olamaz."
            Target.Select
        End If
    End If
End Sub
 
Katılım
23 Temmuz 2019
Mesajlar
37
Excel Vers. ve Dili
İş Office 2010
Altın Üyelik Bitiş Tarihi
01-10-2025
Tam istediğim gibi olmuş elinize sağlık

birde bu msgbox verdikten sonra tarihi düzeltmeden devam ettiriyor. tarihi düzeltmeden devam ettirmesin onu nasıl ayarlayabiliriz
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,743
Excel Vers. ve Dili
2021 Türkçe
Bu istediğiniz şey sadece 3 hücre için kullanılacağına göre aslında veri doğrulama ile yapılması daha doğru olur ama manuel yapıldığında sadece bir kriter girilebiliyor.
Ben Veri doğrulamayı kod ile tanımlayacak kodu aşağıda veriyorum.
Bu kodu bir kere çalıştırırsanız veri doğrulama yapılmış olur.

Kod:
Sub Test()
    With Range("B9,E9,H9").Validation
        .Delete
        .Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _
        xlBetween, Formula1:="=B9<E9", Formula2:="=B9<H9"
        .IgnoreBlank = True
        .InCellDropdown = True
        .ErrorTitle = "HATA"
        .ErrorMessage = "B9 hücresi F9 ve H9 dan büyük olamaz."
        .ShowError = True
    End With
End Sub
 
Üst