Excel VBA获取当前的下一张表的名称

在Excel VBA中有没有办法在ActiveSheet之后获取下一张表的名称?

例如,让我们假设我的电子表格有4个工作表,我想创build一个插入当前工作表(这里是Sheet1 )下一个电子表格( Sheet2 )名称的macros。 喜欢这个:

在这里输入图像说明

Activesheet.Index会给你活动工作表的位置,所以:

 ActiveSheet.Range("A1")= ActiveSheet.Parent.Sheets(Activesheet.Index + 1).Name 

你应该添加一个检查,activesheet不是最后一个…

这里只是一个小样本。

 Dim sh As Worksheet, shprv As Worksheet, shnext As Worksheet //make sure that use "as Worksheet" after every variable you declare Set sh = ActiveSheet //always use "Set" before since these variables are "Object type", only by this their values can be set correctly Set shprv = sh.Previous Set shnext = sh.Next 

在这种情况下, sh的值将与Sheet1一样,
shnext的值将是Sheet2
但是,由于在Sheet1之前没有工作表, shprv将没有任何价值。