将用户表单输出中的数据导出到Excel电子表格中

时间:2016-11-18 09:21:46

标签: excel vba excel-vba

我想问一下是否有人熟悉将Userform列表框中的数据导出到单独的工作表中的方法。

例如,我已经存储并显示了3列("名称","公司""位置")以及用户表单列表框中的多行我想将它传输到Excel工作表(只需单击一个按钮),并带有相应的列和行。

感谢任何可能提供任何建议的人!

'使用结果列表新行上的所有参数显示匹配结果

            Rownum = ResultsList.ListCount
            ResultsList.AddItem

            ResultsList.List(Rownum, 0) = Name.Value
            ResultsList.List(Rownum, 1) = Company.Value
            ResultsList.List(Rownum, 2) = Position.Value


    Else
    End If
 End Sub

 Private Sub CommandButton1_Click()

Sheets.Add = ResultsList.Value

 End Sub

我基本上试图将结果输入" ResultsList"哪个工作正常,进入excel的新工作表。

很抱歉没有在之前添加。

1 个答案:

答案 0 :(得分:0)

以下似乎是您要做的事情:

Private Sub CommandButton1_Click()
    Dim m As Long, n As Long
    Dim ws As Worksheet
    m = ResultsList.ListCount
    n = ResultsList.ColumnCount
    Set ws = Sheets.Add
    ws.Range(ws.Cells(1, 1), ws.Cells(m, n)).Value = ResultsList.List
End Sub

代码假定它是一个多列列表,并且可能会因单个列而失败(我还没有测试过)。它创建一个新工作表,将值放在从A1开始的新工作表中。我不相信这实际上是个好主意。我倾向于发现VBA代码创建新的工作表而没有充分的理由有点烦人 - 因此请确保您有充分的理由将其放在新工作表而不是当前工作表上的某个位置(可能在用户选择的位置)。