从userform – vba excel的tabstrip中移除tab
我有一个表单与几个控件。 它包括一个带有一个标签的标签条。 我允许用户通过单击commandbutton1添加选项卡。 到目前为止这么好。
现在,我还希望用户能够通过单击commandbutton2删除最后一个选项卡(第一个除外)。 问题是,尽pipe我已经search了大约两个小时的事实,但当涉及到标签时,我找不到方法“删除”的正确语法。 任何帮助appresiated。
编辑:
使上述问题更具体:当参数是“stringvariables”而不是特定的标签名时,“remove”方法的正确语法是什么? (例如删除当前标签)
例如,如果以下任何一项工作,这将是很好的:
Sub test Dim nm As String With TabStrip1 nm = .SelectedItem.Name .Tabs.Remove (nm) End With End Sub
要么
Sub test With TabStrip1 .Tabs.Remove (.SelectedItem.Name) End With End Sub
嗨,您可以通过TabStrip1.Tabs.Remove
行删除一个选项卡。
Private Sub CommandButton1_Click() 'Insert the Tap Test TabStrip1.Tabs.Add ("Test") End Sub Private Sub CommandButton2_Click()'Removes the Tap Test TabStrip1.Tabs.Remove ("Test") End Sub
其余的你可以用一个东西来处理像这样:
If TabStrip1.Tabs.Count >= 2 Then TabStrip1.Tabs.Remove (TabStrip1.Tabs.Count - 1) End If
如果有两个以上的水龙头,你必须检查拳头。 如果是删除最后一个Tap。 提示她是,索引从第二个水龙头开始!
终于find了方法。 remove
方法接受一个选项卡的caption
作为参数,而不是它的name
。
在这种情况下,以下工作很好:
Private Sub CommandButton2_Click() Dim nm As String With TabStrip1 nm = .SelectedItem.Caption .Tabs.Remove (nm) End With End Sub
要么
Private Sub CommandButton2_Click() With TabStrip1 .Tabs.Remove (.SelectedItem.Caption) End With End Sub