我想问一下是否有人熟悉将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的新工作表。
很抱歉没有在之前添加。
答案 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代码创建新的工作表而没有充分的理由有点烦人 - 因此请确保您有充分的理由将其放在新工作表而不是当前工作表上的某个位置(可能在用户选择的位置)。