• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Veri Doğrulama

Katılım
4 Nisan 2006
Mesajlar
999
Excel Vers. ve Dili
OFFICE 2021 Türkçe
Selamlar;

Sarı hücrelere girilen veri şayet saat ise saatten sonra bir boşluk ve satır sutun ifadesi olacak mesala 08:10 HV_3 gibi veri doğrulama ile (makro yada makrosuz) açılır kutu olacak şekilde(liste) nasıl yapacağız

Veri doğrulama ile yapılamıyorsa makro ile nasıl yapılır



saygılar;
 

Ekli dosyalar

Son düzenleme:
Sn. mesudiye'li hemşehrim, soruyu ben şahsen anlayamadım. Veri doğrulama demişsiniz ama, bir koşul öne sürmüşsünüz sizin istediğiniz daha çok kuşullu biçimlendirme ile ilgili gibi yorumladım ben.
 
Merhaba,

Aşağıdaki kodları sayfanın kod bölümüne kopyalayıp dener misiniz?

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [B2:F5]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
If Target.NumberFormat = "hh:mm;@" Then
    Application.EnableEvents = False
    Target = Format(Target.Value, "hh:mm;@") & _
             " " & Cells(1, Target.Column) & Cells(Target.Row, "A")
    Target.NumberFormat = "@"
    Application.EnableEvents = True
End If
Son:
End Sub
 

Ekli dosyalar

Selam;
Sayın Necdet yeşertener
ekledim olmadı
örnek olarak misal
b5 hücresine 08:20 yazarsam bu yazdığım saat 08:20 HV_3 OLACAK (yani satır sutun başlığıI)

saygılar;
 
Merhaba,

Önceki mesajıma dosya ekledim inceler misiniz?
 
Selam;
Necdet Yeşertener;

ilgine teşekkür ederim

mesela
c4 hücresine saat girince olay gerçekleşiyor
ama tekrar c4'e saat girince saat olarak kalıyor

saygılar;
 
Evet saat olduğunu algılatamadım. Belki başka bir çözüm olabilir, bekleyelim bakalım.
 
Selamlar;

olursa güzel olacak
ilgine teşekkür ederim

Saygılar;
 
Merhaba,

Aşağıdaki kodları dener misiniz.


Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Intersect(Target, [B:F]) Is Nothing Then Exit Sub
If Target.Value = "" Then Exit Sub
    If Target.NumberFormat = "h:mm" Then
    Application.EnableEvents = False
    Target = Format(Target.Value, "hh:mm;@") & _
             " " & Cells(1, Target.Column) & Cells(Target.Row, "A")
    Target.NumberFormat = "General"
    Application.EnableEvents = True
End If
Son:
End Sub
 

Ekli dosyalar

Selam;
Sayın Necdet Yeşertener
çok teşekkür ederim
çok şahane olmuş
Saygılarımla;
 
Selam;

Sayın Necdet Yeşertener
Listeye doğrulama /liste uyguladım
bu şekilde saatleri nasıl istediğimiz gibi (08:00 hv_3 gibi..) yaparız..

saygılar
Not ekli dosyayı değiştirdim
 

Ekli dosyalar

Son düzenleme:
Merhaba,

Tablo düzeni bu şekilde ise,

Kod:
If Target.NumberFormat = "[h]:mm" Then
satırı yerine,

Kod:
If WorksheetFunction.CountIf(Range("J5:J65000"), Target.Value) <> 0 Then
yazarsanız istediğiniz olacaktır.
 
Geri
Üst