HÜcreyİ BoŞ GeÇmesİn

Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
DeĞerlİ Hocalarim.
HazirladiĞim Dosyada Kİlİt Bİr Nokta Var. C27 HÜcresİne Muhakkak Tir Yada Kamyon Yazilamsi Gerekmektedİr.hÜcre BoŞ GeÇİlmemelİdİr.

Bu SaĞlanilabİlİrmİ.

Bu İŞlemİde ÇÖzersem Dosyam SunuŞa Hazir Olacak.

Affiniza SiĞinarak ;
Sabah İŞe GİdeceĞİm.
Cevabinizi Beklİyor.
 

Orion1

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

Ofis-2010-TR 32 Bit
Aşağıdaki kodları deneyiniz.:cool:
Çalışma sayfasının kod bölümüne yazınız.:cool:
Aşağıdaki kodu çalışma sayfasının General bölümüne
Kod:
Dim mesaj As Byte
Aşağıdaki kodlarıda kod bölümüne yazınız.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C27]) Is Nothing Then Exit Sub
    If Target.Value = "" Then
        mesaj = 1
        Else
        mesaj = 0
    End If

End Sub
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If mesaj = 1 Then
        MsgBox "C27 Hücresine mutlaka bir tır veya kamyon yazmalısınız..!!", vbCritical, Application.UserName
    End If

End Sub
 
Son düzenleme:
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
sevgili orıon arkadaşım ;

ekli dosyayı gönderirmisiniz.
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
incelermisin

çalışma sayfamda ;aşağıdaki kod mevcut sizin önermiş olduğunuz kodları yazdığım zaman hata veriyor.


tşk.ederim.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim hucreler()
Dim i%, j%, x%
Dim deger As Variant
Dim Bul As Range
hucreler = Array("$C$5", "$C$7", "$C$9", "$C$11", "$C$13", "$C$15", "$C$17", "$C$19", "$C$21", "$C$23")
For i = 0 To UBound(hucreler) ' - 1
If Target.Address = hucreler(i) Then
Application.EnableEvents = False
deger = Target.Value
Target = Empty
For j = 0 To UBound(hucreler) - 1
If Range(hucreler(j)) = deger Then
MsgBox "Bu değerden zaten girilmiş", vbCritical, "UYARI"
' Target = Empty
Target.Select
Application.EnableEvents = True
Exit Sub
End If
Next j
Target = deger
Application.EnableEvents = True
x = x + 1
End If
Next i
If x = 0 Then: Exit Sub
Set Bul = Sheets("peşin").Range("A1:A500").Find(Target, , , xlWhole)
If Bul Is Nothing Then
MsgBox "Bu değer yok", vbCritical, "UYARI"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
Target.Select
Set Bul = Nothing
Exit Sub
End If
End Sub
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
DİĞer ArkadaŞlarimdada Yardim

DİĞer ArkadaŞlarimdada, Hocalarimdada Yardim Rİca Edİyorum.

Bu Sorunu Nasil Gİderİrİm.
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
ÇaliŞma Sayfasina

ÇaliŞma Sayfasina Orion Hocamin VerdİĞİ Bu Kodlari Yazamiyorum.ÇÜnkİ Daha Öncekİ AÇiklamamdakİ Kodlar Mevcut.

Rİca Etsem Neden YazamadiĞimi Yada Neyİ DÜzeltmem GerektİĞİnİ SÖylermİsİnİz.yada Bu Orion Hocamin GÖnderdİĞİ Kodlari Şu An ÇaliŞma Sayfamdakİ Kodla BİrleŞtİrİp GÖnderebİlİrmİsİnİz.

Amacim ;

("$c$5", "$c$7", "$c$9", "$c$11", "$c$13", "$c$15", "$c$17", "$c$19", "$c$21", "$c$23") HÜcrelerİne Bİrbİrlerİne Benzer Verİler Yazilmayacak Ve Bu HÜcrelere Yazilanlar,peŞİn Sayfasindakİ A1;a500 Arasindakİ Verİlerden OluŞmak Zorunda.

Son Yapmak İstedİĞİm Şey İse C27 HÜcresİ BoŞ GeÇİlİrse Uyari Vermesİnİ İstİyorum.

Saygilarimla..
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
yönlendirirmisiniz.

arkadaşlarım,hocalarım zannediyorum soruma cevap alamayacağım.

lütfen benim soruma uygun örneklere yönlendirirsenizde olabilir.ben içinden ayıklarım.



teşekkür ederim.
 

Orion1

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

Ofis-2010-TR 32 Bit
Aşağıdaki şekilde denermisiniz.:cool:
aşağıdaki kodun general kısmında olması lazım.:cool:
Kod:
Dim mesaj As Byte
aşağıdaki kırmızı ile yazılmış kodları ekleyiniz.:cool:
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim hucreler()
Dim i%, j%, x%
Dim deger As Variant
Dim Bul As Range
[COLOR="Red"]If Target.Address = "$C$27" Then
    If Target.Value = 0 Then
        mesaj = 1
        Else
        mesaj = 0
    End If
End If[/COLOR]
hucreler = Array("$C$5", "$C$7", "$C$9", "$C$11", "$C$13", "$C$15", "$C$17", "$C$19", "$C$21", "$C$23")
For i = 0 To UBound(hucreler) ' - 1
    If Target.Address = hucreler(i) Then
        Application.EnableEvents = False
        deger = Target.Value
        Target = Empty
        For j = 0 To UBound(hucreler) - 1
            If Range(hucreler(j)) = deger Then
                MsgBox "Bu değerden zaten girilmiş", vbCritical, "UYARI"
                ' Target = Empty
                Target.Select
                Application.EnableEvents = True
                Exit Sub
            End If
        Next j
        Target = deger
        Application.EnableEvents = True
        x = x + 1
    End If
Next i

If x = 0 Then: Exit Sub
Set Bul = Sheets("peşin").Range("A1:A500").Find(Target, , , xlWhole)
If Bul Is Nothing Then
MsgBox "Bu değer yok", vbCritical, "UYARI"
Application.EnableEvents = False
Target = Empty
Application.EnableEvents = True
Target.Select
Set Bul = Nothing
Exit Sub
End If

End Sub
Aşağıdaki kodlarında olması lazım.(Worksheet_selectionChange olayında)
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If mesaj = 1 Then
        MsgBox "C27 Hücresine mutlaka bir tır veya kamyon yazmalısınız..!!", vbCritical, Application.UserName
    End If

End Sub
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
orıon hocam cahilliğimi bağışlayın

örnek dosya eklermisiniz ?:roll: :confused:
 
Katılım
22 Ocak 2007
Mesajlar
321
Excel Vers. ve Dili
offıce 2003
süpersin

sayın orıon hocam emeğine sağlık.:bravo: çok tşk.ederim.
 
Katılım
28 Kasım 2007
Mesajlar
919
Excel Vers. ve Dili
Office 2010 İngilizce
Soru: Peki bu işlem Data validation ile nasıl olur arkadaşlar ?
 
Üst