2013-04-11 14 views
5

Bir Excel sayfam var ve A2, B2 ve C2'de veri giriyorum; Ben vurmak sonra imleç bir sonraki satırı seçmek istediğiniz girmek yüzden can A3, B3 ve C3 ve böyleceBaşka Bir Hücredeki Verileri Girdikten Sonra Belirli Bir Hücre Git Ve Hits Seçeneklerini Gir

ben bu bilgiyi

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 
If Range("C2").Value <> "" Then 
Range("A3").Select 
End If 
End Sub 

bulundu Ama sadece nasıl olabilir, bir kez çalışır giriş bilgileri ? Ben üzerinden bu işlemi tekrarlayın ve yardımınız için

üzerinde

Teşekkür ..... senin Araçlar

+0

Tür "VBA döngü" Google'a ve ne olsun bakın. –

cevap

1

> seçenekler sonra girin Taşı Seçimi ayarları nedir iletişim:

nasıl tam olarak istediğini yapmak gösterecektir Tech Republic: Three ways to control Excel's cursor movement during data entry daha fazla bilgi yoktur

enter image description here

... Temelde

, içeri veri girmek isteyen aralık hücreleri seçin Excel, ilk hücreyi seçer daha sonra her girişten sonra {Sekme} tuşuna basın. Excel, kara taşını seçiminize uygun boş hücreye taşıyacak.

Voila!

+0

Şu anda giriş yaptığım her seferde sağa doğru hareket etmek için bu seçeneğe sahibim, ancak C3 hücresindeki bilgileri girdikten sonra Enter tuşuna basıp D3'e geçiyorum ve A4'ü seçmem gerekiyor. A4, B4 ve C4 üzerinde giriş bilgileri ve ben tekrar isabet A5 gitmek ve böylece – user2270747

+0

Ben daha fazla ayrıntı ekledim, benim güncellemelerim –

+0

benim sorunu çözdü mi? –

1

VBA dahil etmek gerekirse için sırasıyla yön ve durumunu ayarlamak özelliklerine olduğunu:

Application.MoveAfterReturnDirection = xlToRight 
Application.MoveAfterReturn = True 
6

bir başka yolu.

  1. Eğer Col A tip yerde ise, seçimi Col B tip yerde Eğer Col tip yerde, seçim Col C
  2. hareket edecek Col B.
  3. taşınır C, seçim Col A'ya (Sonraki Satır) geri dönecektir.

Code: Bu, ilgili sayfa kodu alanına gider.

Private Sub Worksheet_Change(ByVal Target As Range) 
    On Error GoTo Whoa 

    Application.EnableEvents = False 

    If Not Target.Cells.CountLarge > 1 Then 
     If Not Intersect(Target, Columns(1)) Is Nothing Then 
      Target.Offset(, 1).Select 
     ElseIf Not Intersect(Target, Columns(2)) Is Nothing Then 
      Target.Offset(, 1).Select 
     ElseIf Not Intersect(Target, Columns(3)) Is Nothing Then 
      Target.Offset(1, -2).Select 
     End If 
    End If 
Letscontinue: 
    Application.EnableEvents = True 
    Exit Sub 
Whoa: 
    MsgBox Err.Description 
    Resume Letscontinue 
End Sub 

ScreenShot

enter image description here

+0

+ 1 güzel kaplıdır. – brettdj

+0

Siddhart Rout Yardımlarınız için teşekkürler! İşe yarıyor!!! =) – user2270747

+0

@ user2270747: İşler? Şüphe ettin mi? : P –

İlgili konular