2013-04-11 92 views
5

我有一個Excel工作表,我在A2,B2和C2中輸入數據;我擊中後進入我希望光標選擇下一行這樣我就可以A3,B3和C3等在另一個單元格中輸入數據並輸入選項後轉到特定單元格

我發現這個信息

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

但它只能一次,怎麼能輸入信息我在重複這個過程,並在

感謝您的幫助.....

+0

類型 「VBA循環」 到谷歌,看看你會得到什麼。 – 2013-04-11 15:22:39

回答

1
在你的工具

>選項對話框什麼是移動選擇輸入後設置:?

enter image description here

有上Tech Republic: Three ways to control Excel's cursor movement during data entry這將告訴你如何做的正是你想要的更多信息...

基本上,選擇要在輸入數據的單元格區域,Excel中,選擇第一個單元格,然後在每次輸入後點擊{Tab}鍵。 Excel將克拉移動到您選擇的下一個空單元

瞧!

+0

現在我有這個選項,每次我輸入時都會右移,但是在輸入單元格C3上的信息後,我輸入它移動到D3,然後我需要選擇A4 ......所以下一次我關於A4,B4和C4的輸入信息,我再次打入輸入應該去A5等 – user2270747 2013-04-11 15:22:17

+0

我增加了更多的細節,看看我的更新 – 2013-04-11 15:30:58

+0

是否解決了你的問題? – 2013-04-11 15:58:55

1

如果需要涉及到VBA來,有來分別設定的方向和狀態屬性:

Application.MoveAfterReturnDirection = xlToRight 
Application.MoveAfterReturn = True 
6

的另一種方式。

  1. 如果在柱A型的任何地方,選擇將移至山口B.
  2. 如果您在色柱B型的任何地方,如果你在任何地方上校鍵入選擇將移至山口C.
  3. C,選擇將移回列A(下一行)。

代碼:這在相關的表單代碼區域。

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 

截圖

enter image description here

+0

+1很好地覆蓋。 – brettdj 2013-04-11 23:53:40

+0

Siddhart Rout感謝您的幫助!有用!!! =) – user2270747 2013-04-12 14:21:34

+0

@ user2270747:有效?你懷疑它? :P – 2013-04-12 14:22:50

相關問題