-2
我想用vba在excel中選擇一個單元格。我希望能夠使用變量(i & e)來選擇單元格。其中I = 3和E = 13我希望能夠在excel中選擇一個帶有VBA的單元格
ActiveCell(e, i).Activate
,並選擇單元格C13。
ActiveCell(e, i).Activate
確實有效,但僅當原始活動單元格爲A1時才起作用。任何幫助將不勝感激!
我想用vba在excel中選擇一個單元格。我希望能夠使用變量(i & e)來選擇單元格。其中I = 3和E = 13我希望能夠在excel中選擇一個帶有VBA的單元格
ActiveCell(e, i).Activate
,並選擇單元格C13。
ActiveCell(e, i).Activate
確實有效,但僅當原始活動單元格爲A1時才起作用。任何幫助將不勝感激!
我在代碼中添加了評論,所以它應該很容易理解。
運行下面的代碼首先
Sub Main()
Dim i As Long ' row variable
Dim e As Long ' column variable
i = 3 ' row 3
e = 13 ' column 13 ("M")
' this will put: Cells(3,13) in Range "M3"
Cells(i, e) = "Cells(" & i & ", " & e & ")"
' if you want to offset the current active cell then
' use Offset(x, y)
' use negative x to offset up
Cells(i, e).Offset(-1, 0) = "1 up"
' use positive x to offset down
Cells(i, e).Offset(1, 0) = "1 down"
' use negative y to offset left
Cells(i, e).Offset(0, -1) = "1 left"
' use positive y to offset right
Cells(i, e).Offset(0, 1) = "1 right"
' same principles apply when using range object
Dim r As Range
Set r = Cells(i, e)
r.Offset(-2, 0) = "2 up"
r.Offset(2, 0) = "2 down"
r.Offset(0, -2) = "2 left"
r.Offset(0, 2) = "2 right"
Columns.AutoFit
End Sub
然後看看你的表和分析做什麼:)
歡迎StackOverflow的什麼命令。在這裏簡單搜索一下「vba excel select cell」應該可以找到幾十個這個問題的答案。在發佈問題之前,請至少嘗試自己找到解決方案,因爲以前有人問過並獲得答案的機會相當不錯。謝謝。 –
如果要通過索引引用列,請查看R1C1語法。 –
看看這個:http://support.microsoft.com/kb/291308 – NoChance