答案 0 :(得分:0)
我建议使用验证列表框而不是组合框,然后命名单元格" wsSelect"例如,因为这更简单。打开Visual Basic和包含用户正在选择要打开的工作表的列表的工作表,并使用代码框顶部的两个下拉框创建工作表更改子工作表。然后,以下代码将运行sub以在列表框值更改时更改工作表:
Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("wsSelect")) Is Nothing Then
Call Pb_Switch_Sheet
End If
End Sub
您需要创建一个带有public sub的新模块来切换工作表(excel并不像在模块中为工作表引用不同的工作表)。那么像这样的简单子应该可以做到这一点:
Public Sub Pb_Switch_Sheet()
Dim wsName As String
ws = ThisWorkbook.ActiveSheet.Range("wsSelect").Value
ThisWorkbook.Sheets(ws).Select
End Sub
希望有所帮助!
A
答案 1 :(得分:0)
尝试将图纸名称添加到组合框中:
def testFunc(queue)
#Some print statements
#I want to get these print statements in the queue for main process to read
在combobox1更改或点击事件
下运行以下内容With Sheets(1)
For shtIndex = 2 to Application.Sheets.Count
.Combobox1.additem Sheets(shtIndex).name
next shtIndex
end with