我有一个commandButton,它打开一个UserForm来添加一个新的工作表。 在此Userform是一个ComboBox,我可以在其中选择机器类型。
现在我想创建一个新的工作表,其中包含在ComboBox中选择的机器类型的名称。
这是我的代码:
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Sheets("Sheet1").Copy Before:=Sheets(10)
ws.Name = ComboBox1
[UserForm1].Hide
End Sub
Private Sub UserForm_Initialize()
ComboBox1.List = Array("Machine Type 1", "Machine Type 2")
End Sub
有没有办法创建一个新工作表,它是Sheet1的副本,并将其命名为ComboBox1中的机器类型?
感谢您的帮助。
答案 0 :(得分:1)
请尝试下面的代码,请参阅代码注释中的注释:
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Sheets("Sheet1").Copy Before:=Sheets(10)
Set ws = ActiveSheet ' <-- you need to set the worksheet object to the latest copied sheet
ws.Name = ComboBox1.Value '<-- now you can modify the name using the worksheet object
Me.Hide '<-- hide the user-form
End Sub
答案 1 :(得分:0)
使用
Private Sub CommandButton1_Click()
Sheets("Sheet1").Copy Before:=Sheets(Sheets.Count)
ActiveSheet.Name = ComboBox1.Value
Me.Hide
End Sub