在工作簿中的每个工作表的不同工作表中创建一列

时间:2019-07-17 09:20:00

标签: excel vba

我的工作簿中有4张纸。但是,我将在sheet4之前添加或删除工作表。那是唯一不变的表。在此工作表上,我想为sheet4之前的每个工作表创建一列。工作表1的A列,工作表2的B列和工作表3的C列。

每列的第一个单元格应包含工作表名称。我设法做到了,但是却无法执行以下操作:每当我删除工作表时,都应删除在sheet4中创建的相应列,并且当我添加新工作表时,应相对于工作簿中的位置创建一个新列(如果在第2和3页之间,则该列应为C列)

如果可能的话,我也想插入一个定义的范围,例如A1:A5,B1:B5等,而不是每张纸插入一整列。

Sub Prepare2_Sheet()
    Dim sheetnum As Long
    sheetnum = ThisWorkbook.Worksheets("Sheet4").Index - 1

    For i = 1 To sheetnum
        Sheet4.Columns(i).Insert
        Sheet4.Cells(1, i) = ThisWorkbook.Worksheets(i).Name
    Next i        
End Sub

0 个答案:

没有答案