我想允许用户选择可能位于不同工作簿中的范围。
我试图用inputbox(“”,type:= 8)来做这件事,它可以选择工作簿中的数据,但拒绝允许我在不同的工作簿中选择一个范围。
因此我想要一个允许我执行此任务的对话框。
答案 0 :(得分:21)
由于我有空,我为你创建了一个例子
创建Userform
并放置ComboBox
,A RefEdit
控件和Label
接下来将此代码粘贴到Userform
中Private Sub UserForm_Initialize()
Dim wb As Workbook
'~~> Get the name of all the workbooks in the combobox
For Each wb In Application.Workbooks
ComboBox1.AddItem wb.Name
Next
ComboBox1 = ActiveWorkbook.Name
End Sub
'~~> This lets you toggle between all open workbooks
Private Sub Combobox1_Change()
If ComboBox1 <> "" Then Application.Workbooks(ComboBox1.Text).Activate
Label1.Caption = "": RefEdit1 = ""
End Sub
'~~> And this lets you choose the relevant range
Private Sub RefEdit1_Change()
Label1.Caption = ""
If RefEdit1.Value <> "" Then _
Label1.Caption = "[" & ComboBox1 & "]" & RefEdit1
End Sub
这是您运行Userform时获得的