MS Excel VBA如何在当前工作表和其他三个中插入一行

Gly*_*lyn 0 excel vba excel-vba

我正在使用MS Excel 2007和Microsoft Visula Basic 6.5.

我想在工作表中选择一行,然后使用宏在此工作表和其他三个工作表中插入一行.我正在尝试下面的代码但是当我运行它时,我在"工作表"("Rel.计划会议")上得到错误"运行时错误'1004':应用程序定义或对象定义错误".范围(Lst).启用".

Sub Copy1()
Dim Lst As Long
'save the rowNo
Lst = ActiveCell.Row

Worksheets("Rel. Planning Meeting").Activate
Worksheets("Rel. Planning Meeting").Range(Lst).Activate
ActiveCell.EntireRow.Insert

Worksheets("Master Release Plan - HTSTG").Activate
Worksheets("Master Release Plan - HTSTG").Range(Lst).Activate
ActiveCell.EntireRow.Insert

Worksheets("Inst. Gateway").Activate
Worksheets("Inst. Gateway").Range(Lst).Activate
ActiveCell.EntireRow.Insert


Worksheets("CAB").Activate
Worksheets("CAB").Range(Lst).Activate
ActiveCell.EntireRow.Insert

Worksheets("Rel. Planning Meeting").Range("A3:G5000").Copy _
Destination:=Worksheets("Master Release Plan - HTSTG").Range("A3")

Worksheets("Master Release Plan - HTSTG").Range("A3:O5000").Copy _
Destination:=Worksheets("Inst. Gateway").Range("A3")

Worksheets("Inst. Gateway").Range("A3:T5000").Copy _
Destination:=Worksheets("CAB").Range("A3")

End Sub
Run Code Online (Sandbox Code Playgroud)

我已经尝试过"Dim Lst As Range"然后我得到错误"运行时错误'91':对象变量或With block变量未设置"on"Lst = ActiveCell.Row".

非常感谢您的帮助.

问候,

格林

新守则:

Sub InsertRow()

Dim Lst As Long
'save the rowNo
Lst = ActiveCell.Row

'Insert a row in each worksheet at the currently selected cell.
Worksheets("Rel. Planning Meeting").Rows(Lst).Insert
Worksheets("Master Release Plan - HTSTG").Unprotect
Worksheets("Master Release Plan - HTSTG").Rows(Lst).Insert
Worksheets("Inst. Gateway").Unprotect
Worksheets("Inst. Gateway").Rows(Lst).Insert
Worksheets("CAB").Unprotect
Worksheets("CAB").Rows(Lst).Insert
End Sub
Run Code Online (Sandbox Code Playgroud)

chr*_*sen 5

除了@Bharath的答案之外,它不是必需的,而且使用起来也是个坏主意Select.
您的行插入代码可以缩减为

Worksheets("Rel. Planning Meeting").Rows(Lst).Insert
Worksheets("Master Release Plan - HTSTG").Rows(Lst).Insert
Worksheets("Inst. Gateway").Rows(Lst).Insert
Worksheets("CAB").Rows(Lst).Insert
Run Code Online (Sandbox Code Playgroud)