我有一個excel名稱範圍中的值列表。我想編寫一個VB代碼,以便使用這些值列表創建工作表。這些值列表保留在改變。如何在vb中創建動態列表中的工作表
下面是代碼:
Sub AddSheets()
Dim cell As Excel.Range
Dim wsWithSheetNames As Excel.Worksheet
Dim wbToAddSheetsTo As Excel.Workbook
Dim i As Integer
i = 0
Set wsWithSheetNames = ActiveSheet
Set wbToAddSheetsTo = ActiveWorkbook
For Each cell In wsWithSheetNames.Range("sheet_name").End(xlDown)
With wbToAddSheetsTo
.Sheets.Add after:=.Sheets(.Sheets.Count)
On Error Resume Next
ActiveSheet.Name = cell.Value
If Err.Number = 1004 Then
Debug.Print cell.Value & " already used as a sheet name"
End If
On Error GoTo 0
End With
Next cell
這裏sheet_name
(細胞在單個列)是在哪裏創建的片材的名稱被傾倒的namerange。 工作表的號碼可能會改變。
我上面的代碼無法正常工作,它只是創建了一個工作表,名稱爲該範圍內的最後一個值。在哪裏出錯了?我是VB新手,可能有更好的方法來做到這一點?