Formüllü alanda veri doğrulama mümkün mü

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Merhaba, veri doğrulama ile veri girişini engellemek istiyorsanız veri doğrulamayı veri girişinizin yapıldığı A ve B sütunlarına yapmanız gerekiyor. Aksi takdirde veri girişi yapılmaya devam eder. Sadece C sütununa veri doğrulama uyguladığınız zaman yalnızca geçersiz veriyi daire içine alıp gösterebilirsiniz. Veri girişini engellemek için verilerin girildiği hücrelere veri doğrulama uygulamanız gerekir.
Bununla birlikte başka bir veri doğrulama kullananmanız gerektiğini belirtmişsiniz, iki veri doğrulamayı tek formülde birleştirmek mümkün olabilir. Örnek dosyanız için doğrulama formulü şu şekilde olabiilir.
Kod:
=EĞERSAY($C$1:$C$20;">0")<16
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba, alternatif olsun.

Sanırım sorunuz veri doğrulama işlemi değil, A ve B sütunlarına elle veri girişi yapılırkan,
A1:B20 arasına yazılan değerlerin toplamı olan C sütununda boş sonuç vermeyen hücre sayısının 15 ile sınırlandırılması.
-- alt taraftan ilgili sayfanın adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
-- açılan VBA ekranında, sağdaki boş alana aşağıdaki kod blokunu yapıştırın.
.
Kod:
[B][COLOR="blue"]Private Sub Worksheet_Change(ByVal Target As Range)[/COLOR][/B]
If Intersect(Target, [[COLOR="Red"]A1:B20[/COLOR]]) Is Nothing Then Exit Sub
For sat = 1 To 20
    If Cells(sat, "C").Value <> "" Then say = say + 1
Next
If say > [COLOR="red"][B]15[/B][/COLOR] Then
    MsgBox "Kriter alanın istiap haddi doldu, veri yazamazsınız."
    Target = ""
End If
[B][COLOR="Blue"]End Sub[/COLOR][/B]
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,248
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Alternatif.
VBA kod isterseniz,Buyurun.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1:B20]) Is Nothing Then Exit Sub
If WorksheetFunction.Count(Range("C1:C20")) > 15 Then
    MsgBox "Dolu hücre sayısı 15 i geçti!!", vbCritical, "UYARI"
    Target.Value = ""
End If
End Sub
 
Katılım
12 Haziran 2017
Mesajlar
105
Excel Vers. ve Dili
2021 64 Bit Tr
Merhaba, veri doğrulama ile veri girişini engellemek istiyorsanız veri doğrulamayı veri girişinizin yapıldığı A ve B sütunlarına yapmanız gerekiyor. Aksi takdirde veri girişi yapılmaya devam eder. [/CODE]
Sayın Mucit77,
Yukarıdaki bilgiyi arıyordum. Teşekkür ederim.

Sayın Baran, Sayın Orion1,
Kod için sağ olun.

Bu noktada kod kullanmam daha doğru olacak.
 
Üst