2010-04-26 42 views
8

我正在使用VBA,並希望在特定位置插入一行而不選擇它。 我遇到的問題是,在選中該行後,當腳本完成運行時,電子表格將向下滾動到該行。我希望能夠在電子表格向下滾動到插入的行的情況下執行此操作。插入行而不選擇任何東西?

Rows(i & ":" & i).Select 
ActiveCell.EntireRow.Insert 

我不想選擇A1來到頂部。

回答

17

只是這樣做:

Cells(i,1).EntireRow.Insert 

直接套用動作所需的範圍,而不是第一選擇,並運用行動「Activecell」。

一些其他注意事項:

  • 的「錄製宏」功能生成喜歡你的示例代碼,但我發現,事先選擇小區編寫自己的代碼時,很少是必要的。
  • 一個好處:直接在單元格上操作而不是先選擇它可以將代碼速度提高10倍到100倍!
+0

非常好,謝謝! – sooprise 2010-04-27 21:47:00

+0

提及表現 – Scorchio 2013-02-21 15:36:31

5

Rows(i & ":" & i).Insert將在下面插入一行而不更改選擇。

相關問題