Önceki Hücreye Veri girmeden bir sonraki hücreye geçilmesin..

Katılım
15 Nisan 2008
Mesajlar
27
Excel Vers. ve Dili
Excel 2003
Arkadaşlar Merhaba;

Excel de bir önceki sütuna veri girmeden bir sonraki sutuna geçmesini engelleyecek bir yol varmıdır.

Örneğin

adı soyadı nı girmeden Adres bilgisine geçemesin.

Çok teşekkür ederim.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Ekteki örnek dosyanın "Sayfa1" adlı sheetinde aşağıdaki kodlar kullanılmıştır. Kodun açıklaması yeşil notlar ile belirtilmiştir.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    
[COLOR=darkgreen]    'Eğer veri girilen hücre,
    'C3:C40 arasındaysa[/COLOR]
    If Not Intersect(Target, Range("C3:C40")) Is Nothing Then
        
[COLOR=darkgreen]        'Eğer veri girilen hücrenin
        'solundaki hücre boşsa[/COLOR]
        If Target.Offset(0, -1) = Empty Then
            MsgBox "İsim girmeden adres giremezsiniz", vbCritical, "UYARI"
            
[COLOR=darkgreen]            'Girilen veri geçerli değildir
            've silinir.[/COLOR]
            With Application
                .EnableEvents = False
                 Target = Empty
                .EnableEvents = True
            End With
            
[COLOR=darkgreen]            'Veri girilen hücrenin
            'solundaki hücre seçilir[/COLOR]
            Target.Offset(0, -1).Select
        End If
    
[COLOR=darkgreen]    'Eğer veri girilen hücre,
    'B3:B40 arasındaysa[/COLOR]
    ElseIf Not Intersect(Target, Range("B3:B40")) Is Nothing Then
        
[COLOR=darkgreen]        'Eğer veri girilen hücre boşsa
        'yani, veri girmek değilde silme yapılmışsa[/COLOR]
        If Target = Empty Then
            
[COLOR=darkgreen]            'Veri girilen hücrenin
            'sağındaki hücreyi de sil[/COLOR]
            With Application
                .EnableEvents = False
                 Target.Offset(0, 1) = Empty
                .EnableEvents = True
            End With
        End If
    End If
End Sub
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,373
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

2. Seçenek : Veri Doğrulama ile yapılmış örneği inceleyebilirsiniz.

  • C Sütununu Seçiniz
  • Veri
  • Veri Doğrulama
  • Özel
  • Formül de yazılacak fonksiyon:
Kod:
=BAĞ_DEĞ_DOLU_SAY($B1)>0
 
Katılım
15 Nisan 2008
Mesajlar
27
Excel Vers. ve Dili
Excel 2003
Arkadaşlar çoook teşekkür ederim.

Arkadaşlar çoook teşekkür ederim. Çözümleriniz çok işime yaradı.
Gönderdiğiniz örnekleri inceledim. Fakat anlamadığım COUNTA($B1)>0
ne işe yarıyor. Bu özelliğin örnekteki yerini bulamadım. Bu formul olmadan da sorun çözülüyor. Yoksa atladığım bir şeymi var.
İyi akşamlar...
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,373
Excel Vers. ve Dili
Ofis 365 Türkçe
Arkadaşlar çoook teşekkür ederim. Çözümleriniz Fakat anlamadığım COUNTA($B1)>0
ne işe yarıyor. Bu formul olmadan da sorun çözülüyor.

Makro kullanmıyorsanız sadece veri doğrulama ile yapmak isterseniz, Nasıl çözülüyor? Bende bunu merak ettim.
 
Üst