excel从另一张表中删除信息

时间:2014-06-29 16:31:34

标签: excel ms-office excel-2013

我正在尝试创建一个下拉列表,其中包含工作簿中其他工作表的名称。当我从下拉列表中选择其中一个名称时,我希望它从该表中获取所有人的名字,并通过下拉列表显示在工作表上。但我无法弄明白。

1 个答案:

答案 0 :(得分:0)

使用此代码:

Dim SheetSel As Boolean

Sub InitCMB()
    ComboBox1.Clear
    For Each xx In Sheets
        ComboBox1.AddItem xx.Name
    Next
    SheetSel = True
End Sub

Private Sub ComboBox1_Change()
    If SheetSel = True Then
        e = ComboBox1.ListIndex + 1
        SheetSel = False
        ComboBox1.Clear
        ComboBox1.AddItem ".."
        For i = 1 To 9999
            If Sheets(e).Range("A" & i).Value = "" Then Exit For
            ComboBox1.AddItem Sheets(e).Range("A" & i).Value
        Next
    Else
        If ComboBox1.Value = ".." Then InitCMB
    End If

End Sub

您在组合中插入表格的名称(InitCMB) 如果选择一个工作表,则宏会将名称从A1加载到所选工作表的末尾 在列表中添加顶部“..”,如dir。当您选择“..”时,您将返回到工作表列表。