2010-11-02 87 views
1

列A在某些行中具有值,在其他行中爲空白。VBA將光標向下移動到列A中具有值的下一行?

我在一些其他列。在我所在的行中,A列是空白的。

我想要一個宏,它將移動我的光標 - 保留在當前列 - 直到它在列A的行不是空白。

這似乎很容易,但我不知道VBA。任何幫助?

回答

3
Sub MoveDownBasedOnColumnA() 

    Dim CurCell As Range 
    Set CurCell = ActiveCell 

    Dim CurCellInA As Range 
    Set CurCellInA = Me.Columns("A").Cells(CurCell.Row) 

    If IsEmpty(CurCellInA.Offset(1, 0).Value) Then 
    CurCell.EntireColumn.Cells(CurCellInA.End(xlDown).Row).Select 
    Else 
    CurCell.EntireColumn.Cells(CurCellInA.Row + 1).Select 
    End If 

End Sub 
+0

拋出「無效使用‘我’關鍵字」 ......但我擺脫了「我「。現在它工作! 非常感謝! – dmd 2010-11-02 17:50:43

+0

@dmd:這是因爲你把它放在一個模塊中,而我的意思是它在工作表中,其中'Me'表示代碼所在的表單。沒有'Me'表示「在活動表單上」,它可能是你想要的東西。 – GSerg 2010-11-02 20:25:44

1
Sub a() 
    i = ActiveCell.Row 
    ret = i 
    j = ActiveCell.Column 
    While (Cells(i, 1).Value = "" And i < 16000) 
    i = i + 1 
    Wend 
    If (i = 16000) Then i = ret 
    Application.Goto Reference:=Cells(i, j) 
End Sub 

控制的「失控」的時候,你是波紋管的A列中使用的細胞限制