Excel VBA存储表单索引号供以后使用

我使用此代码删除活动工作表,然后复制另一个工作表,如何存储活动工作表索引编号,以便我可以使用它将复制的工作表移动到存储的索引编号?

Master_Work_Order.Visible = True Dim oldSheetName As String Dim Ws As Worksheet Dim oldTabColor Dim oldSheetIndexNumber 'Store oldSheetName = ActiveSheet.NAme oldTabColor = ActiveSheet.Tab.Color ' oldSheetIndexNumber = Store active sheet index number ActiveSheet.Delete Master_Work_Order.Copy After:=Sheets(ActiveSheet.Index) Set Ws = ActiveSheet 'set new copied sheet name to previous ActiveSheet's name Ws.NAme = oldSheetName Ws.Tab.Color = oldTabColor ' Move active sheet to stored index number Master_Work_Order.Visible = 2 'Makes sheet very hidden 

如果我得到你的情况,这应该工作。 我只用有限的方式来testing它。 .Copy方法应该把新的工作表放在正确的位置。

 Dim Ws As Worksheet Dim oldTabColor Dim oldSheetIndexNumber As Integer 'Store oldSheetName = ActiveSheet.Name oldTabColor = ActiveSheet.Tab.Color oldSheetIndexNumber = ActiveSheet.Index ActiveSheet.Delete If ActiveWorkbook.Sheets.Count >= oldSheetIndexNumber Then ActiveWorkbook.Sheets("Sheet2").Copy before:=Sheets(oldSheetIndexNumber) Else ActiveWorkbook.Sheets("Sheet2").Copy after:=Sheets(oldSheetIndexNumber - 1) End If Set Ws = ActiveSheet 'set new copied sheet name to previous ActiveSheet's name Ws.Name = oldSheetName Ws.Tab.Color = oldTabColor